首頁 >Java >java教程 >如何在 Java 中使用「HttpUrlConnection」發送 HTTP 請求?

如何在 Java 中使用「HttpUrlConnection」發送 HTTP 請求?

Barbara Streisand
Barbara Streisand原創
2024-12-22 12:14:36188瀏覽

How to Send HTTP Requests in Java Using `HttpUrlConnection`?

在Java 中編寫和發送HTTP 請求

要利用Java 中HTTP 請求的強大功能,您可以使用java.net.HttpUrlopConnection班級。它提供了一個全面的 API,用於建立 HTTP 請求並將其分派到任何 Web 伺服器。

建立連接

要建立連接,您將建立一個 URL 物件並使用它來建立 HttpUrlConnection 連接。指定請求方法(例如 POST、GET)並設定必要的標頭,例如 Content-Type 和 Content-Length。

準備 HTTP 請求

對於POST 請求,將請求參數格式化為查詢字串(例如「name=John&age=30」)。使用 DataOutputStream 將參數寫入輸出流。

發送請求

請求準備好後,使用 DataOutputStream.writeBytes() 發送請求,以傳輸請求正文。 Web 伺服器將回應請求的資源。

接收回應

InputStream 用於從伺服器擷取回應。使用 BufferedReader 逐行讀取回應並建立最終回應正文。

範例程式碼

以下程式碼片段展示如何使用以下指令執行HTTP POST 要求上述技術:

import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.io.OutputStreamWriter;
import java.io.IOException;

public static void sendHttpRequest() throws IOException {
    // Create the connection
    URL url = new URL("http://example.com/");
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setRequestMethod("POST");
    connection.setDoOutput(true);
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

    // Build the request parameters
    String postData = URLEncoder.encode("name", "UTF-8") + "=" + URLEncoder.encode("John", "UTF-8");

    // Send the request
    OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream());
    writer.write(postData);
    writer.flush();

    // Get the response
    int responseCode = connection.getResponseCode();
    if (responseCode == HttpURLConnection.HTTP_OK) {
        BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
        String line;
        while ((line = reader.readLine()) != null) {
            System.out.println(line);
        }
        reader.close();
    }

    connection.disconnect();
}

透過執行下列步驟並要求上述技術:

透過執行下列步驟並要求上述技術:透過執行下列步驟並利用HttpUrlConnection 類,您可以在您的Java 應用程式中輕鬆編寫和傳輸HTTP 請求。

以上是如何在 Java 中使用「HttpUrlConnection」發送 HTTP 請求?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn