2017-09-18 6 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); 
} 

私はJSON文字列に私のオブジェクトのUserInfoを変換するgsonライブラリを使用しています。

今私の質問です。私はどのように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

public class User { private String username; } 

そして、あなたのサービスを、私は、それを考えます'@RequestBody UserInfo input'としなければなりませんが、js' User'が1対1でなければ、いくつかのDTOクラスを作ることができます – varren

答えて

0

あなたは良いパスにしています。

あなたユーザークラスを実装して、それを直接バインドすることができます:あなたがそうJSONを送信している

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