JavaでJSONを使用したHTTP POST 質問する

JavaでJSONを使用したHTTP POST 質問する

Java で JSON を使用して簡単な HTTP POST を作成したいと思います。

URLがwww.site.com

そして、例えば{"name":"myname","age":"20"}というラベルの付いた値を取り込みます。'details'

POST の構文を作成するにはどうすればよいでしょうか?

また、JSON Javadocs で POST メソッドが見つからないようです。

ベストアンサー1

必要なことは次のとおりです:

  1. Apacheを取得するとHttpClient、必要なリクエストを行うことができます
  2. それを使ってリクエストを作成しHttpPost、ヘッダーを追加しますapplication/x-www-form-urlencoded
  3. StringEntityJSONを渡すための を作成します
  4. 呼び出しを実行する

コードは大まかに次のようになります (デバッグして動作させる必要があります)。

// @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(); 
}

おすすめ記事