首页 > Java > java教程 > 如何在 Java 中使用'HttpUrlConnection”发送 HTTP 请求?

如何在 Java 中使用'HttpUrlConnection”发送 HTTP 请求?

Barbara Streisand
发布: 2024-12-22 12:14:36
原创
239 人浏览过

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

在 Java 中编写和发送 HTTP 请求

要利用 Java 中 HTTP 请求的强大功能,您可以使用 java.net.HttpUrlConnection班级。它提供了一个全面的 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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板