HTTPレスポンスボディを文字列として取得するにはどうすればいいですか? 質問する

HTTPレスポンスボディを文字列として取得するにはどうすればいいですか? 質問する

以前は、ここに記載されているように、Apache Commons を使用して取得する方法があったことは知っています。

http://hc.apache.org/httpclient-legacy/apidocs/org/apache/commons/httpclient/HttpMethod.html

...ここに例を示します。

http://www.kodejava.org/examples/416.html

...しかし、これは非推奨だと思います。

Java で http get リクエストを作成し、応答本文をストリームではなく文字列として取得する他の方法はありますか?

ベストアンサー1

ここに私の作業プロジェクトからの 2 つの例を示します。

  1. 使用EntityUtilsそしてHttpEntity

    HttpResponse response = httpClient.execute(new HttpGet(URL));
    HttpEntity entity = response.getEntity();
    String responseString = EntityUtils.toString(entity, "UTF-8");
    System.out.println(responseString);
    
  2. 使用BasicResponseHandler

    HttpResponse response = httpClient.execute(new HttpGet(URL));
    String responseString = new BasicResponseHandler().handleResponse(response);
    System.out.println(responseString);
    

おすすめ記事