「java代理发送网络请求」java 网络请求
本篇文章给大家谈谈java代理发送网络请求,以及java 网络请求对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java如何向网页发出请求,并接收
这是
J2EE
里面的内容,你将form表单里面的URL改为服务器里面的servlet的访问URL,服务器就可以处理html发过来的请求,然后由servlet跳转到原来访问网页,并将处理好的数据一起发过来,原来html可以通过AJAX编程来接受来自服务器的请求,并进行控制显示!!!
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程序怎么向网页服务器发送请求
POST方式发送请求示例: String fullurl = url; //打开连接 URLConnection conn =new URL(fullurl).openConnection(); //设置通用的请求属性 conn.setRequestProperty("accept", "*/*"); conn.setRequestProperty("connection", "Keep-Alive"); conn.setRequestProperty("user-agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36"); //发送POST请求必须设置下面两行 conn.setDoInput(true); conn.setDoOutput(true); try ( //获取URLConnection对象对应的输出流 PrintWriter out = new PrintWriter(conn.getOutputStream());) { out.print(parm);//发送请求参数(key1=value1key2=value2) out.flush();//flush输出流的缓冲 } catch (Exception e) {} //获取响应头字段 MapString, ListString map = conn.getHeaderFields(); //根据输入流读取响应数据 InputStream is = conn.getInputStream();
关于java代理发送网络请求和java 网络请求的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。