「java互联网代理」java 网络代理

博主:adminadmin 2022-12-05 05:39:06 75

今天给各位分享java互联网代理的知识,其中也会对java 网络代理进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java的网络代理设置和自己的网络代理软件有冲突

需要使用代理。

使用Jsoup解析Url时,发现无论如何都不能解析,发现单位都是用的代理上网,可能和代理有关,所以,只要在程序中设置好代理就可以。

代理技术,其实不只是Java语言特有的技术,其实在互联网早期就已经出现了这种技术。在计算机网络层面,常用的代理技术有,正向代理、反向代理和透明代理。

Java怎么设置代理来访问网络?

你的问题应该是:在java中通过编程设置代理服务器并访问网络,现在作答如下:

1,讲解一下基础知识:

HTTP:是应用层协议,是基于传输层协议的。

TCP: 是传输层协议,是基于网络层协议的。

IP: 是网络层协议。

一个TCP的连接要进行三次握手(就像转户口一样,不详说),HTTP只是一个应用协议,也就是相当于一个自定义协议,即其没有对底层的传输方式进行干涉,只是对数据内容格式进行了定义。

2,我们再说说HTTP代理,从上可以理解,HTTP代理服务器就是这样一台机器:你把所有的HTTP请求都发到这个 HTTP代理服务器,然后这个HTTP代理服务器请求你要访问的最终地址,把响应回传给你。这里还要注意它代理的是HTTP协议,而HTTP又是基于 TCP的,也就是说这个服务器代理的是指定HTTP内容格式的TCP连接。再说下去也没意思了,看以下代码:

//以下地址是代理服务器的地址

Socket socket = new Socket("10.1.2.188", 80);

//写与的内容就是遵循HTTP请求协议格式的内容,请求百度

socket.getOutputStream().write(new String("GET HTTP/1.1\r\n\r\n").getBytes());

byte[] bs = new byte[1024];

InputStream is = socket.getInputStream();

int i;

while ((i = is.read(bs)) 0) {

System.out.println(new String(bs, 0, i));

}

is.close();

3,当然在Java中,有Proxy代理上网的使用,此时使用URL(HTTP)就不涉及Socket(TCP)了,看如下代码

//设置代理

System.setProperty("http.proxySet", "true");

System.setProperty("http.proxyHost", "10.1.2.188");

System.setProperty("http.proxyPort", "80");

//直接访问目的地址

URL url = new URL("");

URLConnection con = url.openConnection();

InputStreamReader isr = new InputStreamReader(con.getInputStream());

char[] cs = new char[1024];

int i = 0;

while ((i = isr.read(cs)) 0) {

System.out.println(new String(cs, 0, i));

}

isr.close();

java使用代理访问网络的几种方法

使用Proxy来对每个连接实现代理, 这种方法只能在jdk 1.5以上的版本使用(包含jdk1.5), 优点是可以单独的设置每个连接的代理, 缺点是设置比较麻烦:

public static void main(String[] args) {

try {

URL url = new URL("");

// 创建代理服务器

InetSocketAddress addr = new InetSocketAddress("192.168.0.254",

8080);

// Proxy proxy = new Proxy(Proxy.Type.SOCKS, addr); // Socket 代理

Proxy proxy = new Proxy(Proxy.Type.HTTP, addr); // http 代理

// 如果我们知道代理server的名字, 可以直接使用

// 结束

URLConnection conn = url.openConnection(proxy);

InputStream in = conn.getInputStream();

// InputStream in = url.openStream();

String s = IOUtils.toString(in);

System.out.println(s);

} catch (Exception e) {

e.printStackTrace();

}

}

不是很详细, 有什么问题还望大家指正

java互联网代理的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 网络代理、java互联网代理的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-05,除非注明,否则均为首码项目网原创文章,转载请注明出处。