HttpURLConnection 怎么用
时间: 2023-10-12 07:53:28 浏览: 132
使用HttpURLConnection
使用 HttpURLConnection 发起 HTTP 请求的基本步骤如下:
1. 创建一个 URL 对象,指定要访问的 URL。
2. 调用 URL 对象的 `openConnection()` 方法,返回一个 HttpURLConnection 对象。
3. 配置 HttpURLConnection 对象的请求方法(GET、POST 等)以及其他请求属性(如请求头、超时时间等)。
4. 调用 HttpURLConnection 对象的 `connect()` 方法,建立与服务器的连接。
5. 如果需要发送请求体,可以通过 HttpURLConnection 对象的 `getOutputStream()` 方法获取输出流,并向输出流写入请求体数据。
6. 调用 HttpURLConnection 对象的 `getResponseCode()` 方法获取响应码。
7. 根据响应码判断请求是否成功,如果成功可以通过 HttpURLConnection 对象的 `getInputStream()` 方法获取输入流,并读取响应数据。
8. 关闭输入流、输出流和连接。
下面是一个简单的示例代码,演示了如何使用 HttpURLConnection 发起 GET 请求并读取响应数据:
```java
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 {
String url = "https://example.com"; // 替换为你要请求的 URL
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
System.out.println("Response Code: " + responseCode);
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println("Response: " + response.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
上述代码中,我们首先创建了一个 URL 对象,并通过 `openConnection()` 方法获取一个 HttpURLConnection 对象。然后,我们设置请求方法为 GET,并调用 `getResponseCode()` 方法获取响应码。如果响应码为 200,表示请求成功,我们通过输入流读取响应数据,并将其存储在 StringBuilder 对象中。
在实际使用中,你可以根据需要设置其他请求属性、发送请求体、处理响应数据等。希望这个示例对你有帮助!如果还有其他问题,请继续提问。
阅读全文