Java で JSON を使用して簡単な HTTP POST を作成したいと思います。
URLがwww.site.com
そして、例えば{"name":"myname","age":"20"}
というラベルの付いた値を取り込みます。'details'
POST の構文を作成するにはどうすればよいでしょうか?
また、JSON Javadocs で POST メソッドが見つからないようです。
ベストアンサー1
必要なことは次のとおりです:
- Apacheを取得すると
HttpClient
、必要なリクエストを行うことができます - それを使ってリクエストを作成し
HttpPost
、ヘッダーを追加しますapplication/x-www-form-urlencoded
StringEntity
JSONを渡すための を作成します- 呼び出しを実行する
コードは大まかに次のようになります (デバッグして動作させる必要があります)。
// @Deprecated HttpClient httpClient = new DefaultHttpClient();
HttpClient httpClient = HttpClientBuilder.create().build();
try {
HttpPost request = new HttpPost("http://yoururl");
StringEntity params = new StringEntity("details={\"name\":\"xyz\",\"age\":\"20\"} ");
request.addHeader("content-type", "application/x-www-form-urlencoded");
request.setEntity(params);
HttpResponse response = httpClient.execute(request);
} catch (Exception ex) {
} finally {
// @Deprecated httpClient.getConnectionManager().shutdown();
}