private ArrayList<NameValuePair> mParams;
HttpClient client = new DefaultHttpClient();
mParams = new ArrayList<NameValuePair>();
mParams.add(new BasicNameValuePair("testKey", "John"));
mParams.add(new BasicNameValuePair("testSerial", "003-100"));
HttpPost request = new HttpPost("http://localhost:8080/test/getRequiredEnv");
request.setEntity(new UrlEncodedFormEntity(mParams, HTTP.UTF_8));
HttpResponse response = client.execute(request);
// TestController.javaSpring MVCコントローラでHttpRequest getEntityデータを取得するには?
@RestController
public class TestController {
private static final Logger logger = Logger.getLogger(TestController.class);
@RequestMapping(value = "/getRequiredEnv", method = RequestMethod.POST)
public @ResponseBody ResponseInfo getRequiredEnv(
@RequestParam("testKey") String testKey,
@RequestParam("testValue") String testValue,
@RequestHeader HttpHeaders headers) {
logger.info("Test Key [" + testKey + "]");
logger.info("Test Value [" + testValue + "]");
return new TestResponseInfo("0001", "ABC");
}
誰かが、これはSpringMVCの残りのコントローラで「Request.setEntity」からデータを取得するための正しい方法であるか、私は何かが欠けています教えてくださいことはできますか?
第2に、郵便受け "httpPost"リクエストでは、ヘッダ(header)または本文としてパラメータ(testKey & testValue)を渡しますか?
第3に、httpPostリクエストのパラメータを知らなくても、着信リクエストを解析して、Springコントローラのパラメータを抽出できますか?
詳細については、@dudelを詳しく説明します。パラメータやその他の情報を知らなくても、クライアントから送信されたRAWリクエスト/データを単純に印刷する方法はありますか? –
その場合は、 'HttpServletRequest'の' getInputStream() 'または' getReader() 'を使うことができますが、一度しか読むことができません。 – dudel
パーフェクト。後のリンクに記載されているように、後でリクエスト/データを読むことはできますか? http://stackoverflow.com/questions/10457963/spring-rest-service-retrieving-json-from-request –