URL通过java中的代理服务器连接到网站
我无法通过代理在浏览器上显示网站。我手动将代理从Internet选项设置为127.0.0.1:80。在连接到web站点的代码中,我可以获取html代码并将其打印到java控制台上。然而,当我将html代码发送到我的浏览器时,我可以看到它连接到网站并显示类似“欢迎使用Facebook”的标题。但我看不到内容。有时我只看到文字,看不到图像或其他东西。显示网页内容时出现问题。我想不出来。也许你能帮我。而且我想我不能得到UTF-8格式的内容。多谢各位URL通过java中的代理服务器连接到网站,java,proxy,urlconnection,Java,Proxy,Urlconnection,我无法通过代理在浏览器上显示网站。我手动将代理从Internet选项设置为127.0.0.1:80。在连接到web站点的代码中,我可以获取html代码并将其打印到java控制台上。然而,当我将html代码发送到我的浏览器时,我可以看到它连接到网站并显示类似“欢迎使用Facebook”的标题。但我看不到内容。有时我只看到文字,看不到图像或其他东西。显示网页内容时出现问题。我想不出来。也许你能帮我。而且我想我不能得到UTF-8格式的内容。多谢各位 try {
try {
URL url = new URL("" + req.url);
URLConnection urlConnection = url.openConnection();
DataInputStream dis = new DataInputStream(urlConnection.getInputStream());
String inputLine;
while ((inputLine = dis.readLine()) != null) {
// System.out.println(inputLine);
out.writeUTF(inputLine);
}
dis.close();
} catch (MalformedURLException me) {
System.out.println("MalformedURLException: " + me);
} catch (IOException ioe) {
System.out.println("IOException: " + ioe);
}
这就是我如何将行发送到浏览器的方式
private DataOutputStream out = new DataOutputStream(clientSocket.getOutputStream());
您可以在URL连接之前通过
System.setProperty()
在java中设置代理
用于http连接-
System.setProperty("http.proxyHost", " 127.0.0.1");
System.setPropery("http.proxyPort", "80");
System.setProperty("https.proxyHost", " 127.0.0.1");
System.setPropery("https.proxyPort", "80");
用于https连接-
System.setProperty("http.proxyHost", " 127.0.0.1");
System.setPropery("http.proxyPort", "80");
System.setProperty("https.proxyHost", " 127.0.0.1");
System.setPropery("https.proxyPort", "80");
它没有给任何错误,但也没有改变,当我这样做。我通过代理向我的浏览器发送我从网站上读到的文字。我打开了一个套接字,将这些行发送到我的浏览器。所以我不明白为什么我仍然不能显示这些网页