我想在Java中使用HttpURLConnection做GET请求。但是,每次我这样做,每次都会收到400:错误的请求。我需要改变以使其工作?JAVA HttpURLConnection连接+代理
当我在代理服务器后面的计算机上使用它时出现错误。 而且当我用PHP和这个代理使用Curl时,它的工作环境没有密码或认证,所以我认为问题不在那里。
如果有人知道为什么?
谢谢
错误:
url connect ...
ERROR = 400
sun.net.www.protocol.http.HttpURLConnection:http://google.com
Bad request
[email protected]96
这里是我的代码:
package test;
import java.net.*;
import java.io.*;
public class Connect {
public static void main(String[] args) {
HttpURLConnection connexion = null;
try {
URL url = new URL("http://google.com");
System.setProperty("http.proxyHost", "IP_PROXY");
System.setProperty("http.proxyPort", "80");
System.out.println("url connect...");
connexion = (HttpURLConnection) url.openConnection();
connexion.setRequestMethod("GET");
InputStream is;
if (connexion.getResponseCode() >= 400) {
System.out.println("Erreur = " + connexion.getResponseCode());
System.out.println(connexion.toString());
System.out.println(connexion.getResponseMessage());
System.out.println(connexion.getErrorStream());
} else if (connexion.getResponseCode() != HttpURLConnection.HTTP_OK) {
System.out.println(connexion.getResponseMessage());
} else {
System.out.println(is = connexion.getInputStream());
}
} catch (Exception e) {
e.printStackTrace();
} finally {
connexion.disconnect();
}
System.exit(0);
}
}