2012-08-30 7 views
7

私はrest api urlを持っていて、Rest Client(restclient-ui-2.4-jar-with-dependencies)を介してbody(ユーザー名、パスワード、その他のパラメータ)をPOSTリクエストとして送信しました。 。Body Parametersを使用したRestTemplate Post Requestのヘルプが必要ですか?

例:

URL:https://test.com/cgi-bin/testing/api 本体:

(私は春RestTemplate postForObjectを使用した場合正常に動作していない同一のURL、ユーザ名= testuserを&パスワード= pass123 & ID = 13002 &名=ラジュ、 varmap、Employee.class)メソッドを呼び出します。

リクエストがボディパラメータを持つURLで、レスポンスがクラスにマップされたXMLである単純な例を教えてもらえますか?

サンプルコード:事前に

MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>(); 
    map.add("username", "test"); 
    map.add("password", "test123"); 
    map.add("id", "1234"); 
    MarshallingHttpMessageConverter mc = new MarshallingHttpMessageConverter(); 
    mc.setMarshaller(new Jaxb2Marshaller()); 
    mc.setUnmarshaller(new Jaxb2Marshaller()); 
    list.add(marshallingHttpMessageConverter); 
    emediateRestTemplate.setMessageConverters(list); 
    Employee employee = (Employee) restTemplate.postForObject(url, map, Employee.class); 

おかげで、 キャサー

+0

コードが正常に動作していないことを表示できますか? –

+0

restTemplate.postForObject(url、parametersMap、Employee.class); 。また、postForObjectとpostForExchangeの違いを教えてください。 – Kathir

+0

質問をコードで更新し、コメントに追加しないでください。また、1行以上のコードを表示し、関連する設定も表示してください。最後に、Springのサイトにはそれぞれのメソッドが何をするかについての豊富なドキュメントがあります。おそらく、最初にそれを見たいと思うかもしれません。 –

答えて

13

上記のコンバータ例: "MarshallingHttpMessageConverterが" 必要ありません。ポスト

MultiValueMap<String, String> parametersMap = new LinkedMultiValueMap<String, String>(); 
parametersMap.add("username", "test"); 
parametersMap.add("password", "test123"); 
parametersMap.add("id", "1234"); 

restTemplate.postForObject(url, parametersMap, Employee.class); 

URLは次のとおりです。文字列 - 残りのAPI URL parametersMap - MultiValueMap 従業員 - オブジェクトを取得するためにJSONレスポンス

から変換する必要があります

restTemplate.getForObject(url, class object, variablesMap); 

url is:String - rest ap i URL variablesMap - マップ JSONレスポンスから変換する必要があるクラスオブジェクト - オブジェクト

+0

リクエストの返信方法 – gstackoverflow

関連する問題