Java 实现发送 HTTP 请求,系列文章:
1、HttpURLConnection 类的介绍
HttpURLConnection 是 Java 提供的原生标准的用于发送 HTTP 请求和接收 HTTP 响应的一个类,它位于 java.net 包下,并继承了 URLConnection 类。
HttpURLconnection 是基于 HTTP 协议的,支持 get,post,put,delete 等各种请求方式,最常用的就是 get 和 post。
URLConnection 提供了一组方法来建立与 URL 之间的连接、发送请求和接收响应。
以下是 HttpURLConnection 类常用的方法:
| 方法 | 说明 |
|---|---|
| openConnection() | 用于打开与 URL 的连接,返回一个 URLConnection 对象。 |
| setRequestMethod(String method) | 设置请求方法,如 GET、POST 等。 |
| setRequestProperty(String key, String value) | 设置请求属性,如请求头参数。 |
| getRequestMethod() | 获取当前请求的方法。 |
| getRequestProperty(String key) | 获取指定请求属性的值。 |
| connect() | 建立与URL的连接。 |
| getInputStream() | 获取输入流,用于接收响应数据。 |
| getOutputStream() | 获取输出流,用于发送请求数据。 |
| getResponseCode() | 获取响应的状态码。 |
| getHeaderField(String name) | 获取指定响应头字段的值。 |
| setDoInput(boolean doinput) | 设置是否从 URLConnection 读入,默认为true。 |
| setDoOutput(boolean dooutput) | 设置是否向 URLConnection 输出,默认为false。 |
| setInstanceFollowRedirects(boolean followRedirects) | 设置是否自动执行重定向,默认为true。 |
| disconnect() | 断开与URL的连接。 |
2、创建 HttpURLConnection 工具类
通过将常用的方法封装到工具类中,可以避免重复编写相同的代码,从而提高代码的复用性。
基于 HttpURLConnection 的 HTTP 请求工具类:
package com.pjb.consumer.util;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Map;
/**
* 基于 HttpURLConnection 的 HTTP 请求工具类
* @author pan_junbiao
**/
public class HttpURLConnectionUtil
{
// 超时时间
private final static int timeOut = 60000; //60秒
/**
* 发送 GET 请求并获取响应数据
*
* @param url 请求地址
* @param params 请求参数
* @return 响应数据字符串
*/
public static String doGet(String url, Map<String, String> params)
{
HttpURLConnection connection = null;
BufferedReader reader = nul

5415

被折叠的 条评论
为什么被折叠?



