JavaでのHttpURLConnectionの使い方は?

JavaでHttpURLConnectionを使用してHTTPリクエストを送信する手順は次の通りです:

  1. URLアドレスを指定して、URLオブジェクトを作成します。
  2. 接続を開く()
  3. URLConnectionをHttpURLConnectionオブジェクトにキャストする必要がある。なぜなら、それはURLConnectionのサブクラスだからです。
  4. リクエストメソッドを設定する。
  5. setRequestProperty()を使用してください。
  6. 入力を許可するように設定します。
  7. 出力を設定する(setDoOutput())
  8. 接続します。
  9. リクエストボディを送信する必要があれば、出力ストリームを取得してリクエストボディデータを書き込むことができます。
  10. レスポンスコードを取得する。
  11. ステータスコードが200の場合、リクエストは成功し、レスポンスデータを取得できます。
  12. InputStreamを取得する
  13. バッファ付きリーダー
  14. 接続を切る (setsuzoku wo kiru)

以下是一個簡單的範例程式碼:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class HttpURLConnectionExample {
    public static void main(String[] args) {
        try {
            // 创建URL对象
            URL url = new URL("http://example.com");
            
            // 打开URL连接
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            
            // 设置请求方法
            connection.setRequestMethod("GET");
            
            // 设置请求头信息
            connection.setRequestProperty("User-Agent", "Mozilla/5.0");
            
            // 发送请求
            connection.connect();
            
            // 获取响应状态码
            int statusCode = connection.getResponseCode();
            
            // 判断是否请求成功
            if (statusCode == HttpURLConnection.HTTP_OK) {
                // 获取响应输入流
                BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
                
                // 读取响应数据
                String line;
                StringBuilder response = new StringBuilder();
                while ((line = reader.readLine()) != null) {
                    response.append(line);
                }
                reader.close();
                
                // 输出响应数据
                System.out.println(response.toString());
            } else {
                System.out.println("请求失败,状态码:" + statusCode);
            }
            
            // 关闭连接
            connection.disconnect();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

注意:上記の例ではURLアドレスはサンプルです。実際に使用する際は、実際のURLアドレスに置き換えてください。

bannerAds