在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中文網其他相關文章!