2017-09-18 49 views
0

好吧。我需要在後端創建函數來與我的前端進行通信。從我的後端獲取信息的方法正常工作。但我不知道如何閱讀我後端的json信息。如何在Spring Boot中從我的Frontend(Angular 2)獲取信息?那麼,

這是我的方法得到:

@RequestMapping("/hi") 
public @ResponseBody String getName(){ 
    UserInfo info = new UserInfo("Lucas Alves",21,"[email protected]","99998888"); 
    Gson g = new Gson(); 
    return g.toJson(info); 
} 

我使用GSON庫我的對象轉換的UserInfo以JSON字符串。現在

我的問題是。我怎樣才能讓json文本從前端發送給我,並在UserInfo中安全地發送給我。

打字稿代碼:

postUser(p: User){ 
    return this.http.post('http://localhost:8090/postUser', JSON.stringify(p), { headers: new Headers({ 'Content-Type': 'application/json' }) }); 
} 

Java代碼:

@RequestMapping(value = {"/postUser"}, method = RequestMethod.POST) 
public void createUser(What I need to have here?) { 
    //I Don't know what I need to do here. 
} 
+0

您發送JSON所以,我認爲,它應該像'@RequestBody UserInfo input'那樣去做,但是如果你的js'User'不是1比1的匹配,你可以創建一些DTO類 – varren

回答

0

你是一個很好的路徑。

可以實現用戶類,然後直接將其綁定:

public class User { 

    private String username; 

} 

和您的服務

@RequestMapping(value = {"/postUser"}, method = RequestMethod.POST) 
public void createUser(@RequestBody User user) { 
    user.username; // use it? 
} 
相關問題