HttpClient教程】的更多相关文章

转自:http://www.cnblogs.com/loveyakamoz/archive/2011/07/21/2112804.html HttpClient 教程 (一)   前言 超文本传输协议(HTTP)也许是当今互联网上使用的最重要的协议了.Web服务,有网络功能的设备和网络计算的发展,都持续扩展了HTTP协议的角色,超越了用户使用的Web浏览器范畴,同时,也增加了需要HTTP协议支持的应用程序的数量. 尽管java.net包提供了基本通过HTTP访问资源的功能,但它没有提供全面的灵活…
前言 超文本传输协议(HTTP)也许是当今互联网上使用的最重要的协议了.Web服务,有网络功能的设备和网络计算的发展,都持续扩展了HTTP协议的角色,超越了用户使用的Web浏览器范畴,同时,也增加了需要HTTP协议支持的应用程序的数量. 尽管java.net包提供了基本通过HTTP访问资源的功能,但它没有提供全面的灵活性和其它很多应用程序需要的功能.HttpClient就是寻求弥补这项空白的组件,通过提供一个有效的,保持更新的,功能丰富的软件包来实现客户端最新的HTTP标准和建议. 为扩展而设计…
2.1.持久连接 两个主机建立连接的过程是很复杂的一个过程,涉及到多个数据包的交换,并且也很耗时间.Http连接需要的三次握手开销很大,这一开销对于比较小的http消息来说更大.但是如果我们直接使用已经建立好的http连接,这样花费就比较小,吞吐率更大. HTTP/1.1默认就支持Http连接复用.兼容HTTP/1.0的终端也可以通过声明来保持连接,实现连接复用.HTTP代理也可以在一定时间 内保持连接不释放,方便后续向这个主机发送http请求.这种保持连接不释放的情况实际上是建立的持久连接.H…
前言 超文本传输协议(HTTP)也许是当今互联网上使用的最重要的协议了.Web服务,有网络功能的设备和网络计算的发展,都持续扩展了HTTP协议的角色,超越了用户使用的Web浏览器范畴,同时,也增加了需要HTTP协议支持的应用程序的数量. 尽管java.net包提供了基本通过HTTP访问资源的功能,但它没有提供全面的灵活性和其它很多应用程序需要的功能.HttpClient就是寻求弥补这项空白的组件,通过提供一个有效的,保持更新的,功能丰富的软件包来实现客户端最新的HTTP标准和建议. 为扩展而设计…
第二章 连接管理 HttpClient有一个对连接初始化和终止,还有在活动连接上I/O操作的完整控制.而连接操作的很多方面可以使用一些参数来控制. 2.1 连接参数 这些参数可以影响连接操作: 'http.socket.timeout':定义了套接字的毫秒级超时时间(SO_TIMEOUT),这就是等待数据,换句话说,在两个连续的数据包之间最大的闲置时间.如果超时时间是0就解释为是一个无限大的超时时间.这个参数期望得到一个java.lang.Integer类型的值.如果这个参数没有被设置,那么读取…
转自:http://www.cnblogs.com/loveyakamoz/archive/2011/07/21/2113246.html 第三章 HTTP状态管理 原始的HTTP是被设计为无状态的,面向请求/响应的协议,没有特殊规定有状态的,贯穿一些逻辑相关的请求/响应交换的会话.由于HTTP协议变得越来越普及和受欢迎,越来越多的从前没有打算使用它的系统也开始为应用程序来使用它,比如作为电子商务应用程序的传输方式.因此,支持状态管理就变得非常必要了. 网景公司,一度成为Web客户端和服务器软件…
第四章 HTTP认证 HttpClient提供对由HTTP标准规范定义的认证模式的完全支持.HttpClient的认证框架可以扩展支持非标准的认证模式,比如NTLM和SPNEGO. 4.1 用户凭证 任何用户身份验证的过程都需要一组可以用于建立用户身份的凭据.用户凭证的最简单的形式可以仅仅是用户名/密码对.UsernamePasswordCredentials代表了一组包含安全规则和明文密码的凭据.这个实现对由HTTP标准规范中定义的标准认证模式是足够的 UsernamePasswordCred…
第五章 HTTP客户端服务 5.1 HttpClient门面 HttpClient接口代表了最重要的HTTP请求执行的契约.它没有在请求执行处理上强加限制或特殊细节,而在连接管理,状态管理,认证和处理重定向到具体实现上留下了细节.这应该使得很容易使用额外的功能,比如响应内容缓存来装饰接口. DefaultHttpClient是HttpClient接口的默认实现.这个类扮演了很多特殊用户程序或策略接口实现负责处理特定HTTP协议方面,比如重定向到处理认证或做出关于连接持久化和保持活动的持续时间决定…
第六章 高级主题 6.1 自定义客户端连接 在特定条件下,也许需要来定制HTTP报文通过线路传递,越过了可能使用的HTTP参数来处理非标准不兼容行为的方式.比如,对于Web爬虫,它可能需要强制HttpClient接受格式错误的响应头部信息,来抢救报文的内容. 通常插入一个自定义的报文解析器的过程或定制连接实现需要几个步骤: 提供一个自定义LineParser/LineFormatter接口实现.如果需要,实现报文解析/格式化逻辑. class MyLineParser extends Basic…
http://www.tuicool.com/articles/Y7reYb 1. 概述 本教程我们将描述如何使用 HttpClient 4进行一次多文件上传操作 . 我们将使用  http://echo.200please.com  作为测试服务器,因为它是面向公众的,并且接受大多数类型的内容. 如果你想要深入学习并了解你可以使用  HttpClient 做到的其它很棒的事情  – 那就去看看 首要的 HttpClient 教程吧   . 2. 使用  AddPart  方法 让我们开始研究研…
转自来自点击打开链接 接着上一篇,我们继续来分析HttpURLConnection的使用,以及两者的共同点和区别. 目录 用法 HttpURLConnection 区别 引用资料 用法 HttpURLConnection的用法 一.创建HttpURLConnection对象 URL url = new URL("http://localhost:8080/TestHttpURLConnectionPro/index.jsp"); URLConnection urlConnection…
HttpClient教程 : https://www.yeetrack.com/?p=779 一,所需要的环境: 1,testng .httpclient和相关的依赖包 二.使用HttpClient登陆CSDN接口,使用testng作为单元测试框架: import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apa…
HttpURLConnection的用法 一.创建HttpURLConnection对象 URL url = new URL("http://localhost:8080/TestHttpURLConnectionPro/index.jsp"); URLConnection urlConnection = url.openConnection(); HttpURLConnection httpUrlConnection = (HttpURLConnection) urlConnecti…
201521123082 <Java程序设计>第13周学习总结 标签(空格分隔): java 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. Answer: 基本框架: 2. 书面作业 1. 网络基础(参考:实验任务书-题目1) 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? Answer: 结果分别如下: 分析: 1.回复的地址不同: 2.回复时间不同: 在集…
本次作业参考文件 正则表达式参考资料 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 参考资料:XMind 2. 书面作业 Q1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 从图片中可以看出,ping www.baidu.com比ping cec.jmu.edu.cn数据包的时间要更长: 猜想可能与其服务器位置有关,查看IP位置 推测两者返回数据包…
本次作业参考文件 正则表达式参考资料 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 1.2 telnet bbs.newsmth.net,上面这条命令连接的是远程主机的什么端口号? Answer:上面这条命令连接的是远程主机的23号端口. 1.3 telnet cec.jmu.edu…
1. 本周学习总结 1.网络基本概念 2.网络常用命令 ipconfig 查看网络配置信息,如ip地址 ping 测试网络是否连通 telnet 远程登录 ftp 登陆ftp Fport (xp下)查看计算机端口使用情况 3.连接到服务器 套接字(Socket) Socket s = new Socket("cec.jmu.edu.cn",80) s.getInputStream(); //通过套接字获得输入流 s.close(); //关闭连接 2. 书面作业 Q1. 网络基础Q 1…
1. 本周学习总结 1.以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 不同在于: 他们的IP不同,ping www.baidu.com为:163.177.151.110:ping cec.jmu.edu.cn为:210.34.128.152. 完成一次网络交互的时间不同,ping www.baidu.c…
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? A: 传输时间不同,我现在身处成都,所以离百度服务器更近,集美服务器较远.所以通告百度的时间就要短一些. 1.2 telnet bbs.newsmth.net,上面这条命令连接的是远程主机的什么端口号? A: telnet是在TCP上使用…
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 可以看到回复的IP地址.回复的时间.TTL不同.每个域名都有相对应的IP地址,标识该应用程序.相较于IP地址,域名更易被记住.ping的时间指的是网络延时,跟服务器的远近有关,还与服务器的响应时间.访问服务器之间的节点.服务器负载.连接速…
201521123072<java程序设计>第十三周学习总结 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 往返行程的估计时间不同,因为www.baidu.com距离本机较远 1.2 telnet bbs.newsmth.net,上面这条命令连接的是远程主机的什么端口号? 23 1…
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? ping www.baidu.com ping cec.jmu.edu.cn 答:(1)IP地址不同,112.80.248.73为百度的IP地址,210.34.128.152为cec.jmu.edu.cn的IP地址 (2)回复的时间不同…
本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 书面作业 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? answer:ping的域名不同,回复的IP地址不同,数据往返的时间不同.ping www.baidu.com时收到回复时间较长,可能是同时访问的人数较多. 1.2 telnet bbs.newsmth.net,上面这条命令连接的是远程主机的什么端口号?…
1. 本章学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. GET / HTTP/1.0可以返回一个HTML格式的文本页 IP地址可以用来标识网络上的主机 Socket通常用来实现客户端和服务器端的连接 网络上两个程序通过一个双向通信链路实现数据交换,这个双向链路的一端称为一个Socket 对从Socket对象中获得的流进行操作,即可进行网络通信 ServerSocket的accept方法用来监听端口,当没有客户端连接时就阻塞 2. 书面作业 1.网络基础 1.…
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 协议.IP.域名.端口号 协议:网络中为了进行数据交换(通信)而建立的规则.标准或约定(=语义+语法+规则) 常用应用层协议:http, ftp,telnet IP层协议(Internet Protocol):在Internet上的计算机通过IP地址进行标识网络上两台计算机进行通信,使用IP地址互相找到对方 示例: 210.34.148.132 域名:Internet上某一台计算机的名称 示例:cec.…
本次作业参考文件 正则表达式参考资料 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? ping命令一般用来测试源主机到目的主降落的连通性,一般用法是ping IP.他所利用的原理是:网络上的机器都有唯一的IP地址,我们给目标IP地址发送一个数据包,根据返回的数据包我们可以确定目标主机的…
1. 本周学习总结 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 1.1 答:ping www.baidu.com的返回结果: ping cec.jmu.edu.cn的返回结果: 不同点: (1)域名和IP不同,因为每个域名和IP都是一一对应的: (2)往返行程的估计时间不同:由于ping命令是用来检查网络是否通畅或者网络连接速度的命令,受传输介质.网速.对方服务器等因素影响…
1. 13周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 答: 根据以上内容显示,消耗时间不同ping www.baidu.com比ping cec.jmu.edu.cn包的传输时间更长. 这是ping www.baidu.com 这是ping cec.jmu.edu.cn 由图知,距离越远耗…
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? A: C:\Users\Creator>ping www.baidu.com 正在 Ping www.a.shifen.com [14.215.177.37] 具有 32 字 来自 14.215.177.37 的回复: 字节=32 时间=…
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? answer:不同之处在于返回的IP地址不同,出现不同的原因是两个地址对应着两个不同的域名,对应着网络上两台不同的计算机.以及二者的往返时间也不同. 1.2 telnet bbs.newsmth.net,上面这条命令连接的是远程主机的什么…