Java 通过代理网络发送网络请求 (Windows)
在 Windows 上,可以通过以下步骤在 Java 中使用代理网络发送网络请求:
- 设置代理服务器的主机名和端口号。可以使用
System.setProperty()方法设置'http.proxyHost'和'http.proxyPort'属性,示例代码如下:
System.setProperty('http.proxyHost', 'proxy.example.com');
System.setProperty('http.proxyPort', '8080');
- 设置代理服务器的认证信息(如果需要)。如果代理服务器需要用户名和密码进行认证,可以使用
Authenticator类来设置认证信息。示例代码如下:
final String username = 'your_username';
final String password = 'your_password';
Authenticator.setDefault(new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password.toCharArray());
}
});
- 发送网络请求。可以使用
java.net.URL和java.net.HttpURLConnection类来发送网络请求。示例代码如下:
URL url = new URL('http://example.com');
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod('GET');
// 读取响应
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
// 打印响应内容
System.out.println(response.toString());
以上代码中的 'http://proxy.example.com:8080' 是代理服务器的主机名和端口号,根据实际情况进行替换。如果代理服务器需要认证,将 'your_username' 和 'your_password' 替换为实际的用户名和密码。
请注意,以上代码只适用于使用 'http' 协议的代理服务器。如果使用 'https' 协议的代理服务器,可以将 'http.proxyHost' 和 'http.proxyPort' 属性分别替换为 'https.proxyHost' 和 'https.proxyPort' 属性。
原文地址: http://www.cveoy.top/t/topic/brQP 著作权归作者所有。请勿转载和采集!