1

RestTemplateを使用してサーバーから応答を取得し、Androidアプリでその応答を処理したいのですが、サーバーはjson本体にプレフィックス(または変数)を付けて応答するため、応答は次のようになります。

response={"foo":"bar"}

その「response=」の部分を簡単な方法で省略することは可能ですか、それともMappingJacksonHttpMessageConverterクラスを再実装する必要がありますか?

前もって感謝します

編集:これで動作します。次のコードは最新のSpringAndroid(1.0.0 RELEASE)に基づいています。RestTEplate(true)コンストラクターは、必要なコンバーターを追加し、request.toMap()は、FormHttpMessageConverterが受け入れる本体タイプのみであるMultiValueMapを構築します。

HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.setContentType(new MediaType("application", "x-www-form-urlencoded"));

RestTemplate restTemplate = new RestTemplate(true);
restTemplate.setRequestFactory(new HttpComponentsClientHttpRequestFactory());

final String url = "http://www.dummy.org/herp/getDerp";
String result = restTemplate.postForObject(url, request.toMap(), String.class);

これで、出力に文字列があり、そこからJSONを抽出して解析できます。

4

0 に答える 0