HTTPClient4.X
文章平均质量分 81
自然鸟神
我热爱编程,搜索引擎
展开
-
HTTPClient4.5.2学习笔记(一):基础篇
原文地址:http://hc.apache.org/httpcomponents-client-4.5.x/tutorial/html/index.html前言:目前HTTP(超文本传输协议)已然成为了互联网中重要的协议。在WEB服务、互联网应用和网络计算的增长继续扩大了HTTP协议的作用,超越了用户驱动的Web浏览器,同时增加了需要HTTP支持的应用程序的数量。尽管java.ne翻译 2017-05-09 18:10:04 · 7563 阅读 · 3 评论 -
HTTPClient4.5.2学习笔记(二):连接管理(Connection management)
其实在第一篇基础篇的时候在介绍entity的时候就已经,在说三种类型区分的时候就已经提到过连接管理的概念,但是就我个人而言其实对于HTTPClient的连接管理不是很清楚。2.1. 连接的持久性(Connection persistence)建立从一个主机到另一个主机的连接的过程是相当复杂的,并且涉及两个端点之间的多个分组交换,这可能是相当耗时的。连接握手的开销可能很大,特别是翻译 2017-05-11 17:09:58 · 8773 阅读 · 0 评论 -
HTTPClient4.5.2学习笔记(三): HTTP状态管理(state management)
最初HTTP被设计为无状态的,面向请求/响应的协议,对于跨(spanning across)多个逻辑相关的请求/响应交换的有状态会话没有特别规定(provisions)。随着HTTP协议的普及和采用越来越多的系统开始将其用于应用程序,它从来不用于例如电子商务应用的传输。因此,状态管理的支持成为必然。Netscape Communications当时是网络客户端和服务器软件的领先开发商,它们翻译 2017-05-12 10:19:58 · 681 阅读 · 0 评论 -
HTTPClient4.5.2学习笔记(四): HTTP 身份认证
HttpClient提供对HTTP标准规范定义的认证方案以及许多广泛使用的非标准认证方案(如NTLM和SPNEGO)的全面支持4.1.用户凭证( User credentials)用户认证的任何过程都需要一组可用于建立用户身份的凭据。在最简单的用户凭证就是用户名/密码对.UsernamePasswordCredentials 表示一组凭证集合,其中包括一个sec翻译 2017-05-12 11:52:22 · 4129 阅读 · 0 评论 -
HTTPClient4.5.2学习笔记(五):流式请求API(Fluent API)
我个人感觉这个就像JQUERY的AJAX设计一样,简化一次HTTP请求的代码数量,可以像流水线一样往请求上添加需要的头、内容、参数。5.1.请求facade API从4.2版本开始,HttpClient自带了一个易于使用的facade API,基于fluent interface的概念。Fluent facadeAPI仅暴露了HttpClient的最基本功能,旨在用于不需要Http翻译 2017-05-12 14:05:01 · 3612 阅读 · 0 评论 -
HTTPClient4.5.2学习笔记(六):HTTP 缓存
6.1. 基本概念HttpClient Cache 是基于 HTTP/1.1,相当于浏览器缓存.其实现使用了责任链设计模式 , HttpClient 的缓存实现 可以为默认的非缓存HttpClient实现提供替代; 并且在完全满足缓存需求的同时不会影响实际的原始请求。 在有条件的Get请求、请求头部有If-Modified-Since 和 If-None-Match参数,则过期的缓存ent翻译 2017-05-12 14:55:02 · 1432 阅读 · 0 评论 -
HTTPClient4.5.2学习笔记(七):高级话题(Advanced topics)
7.1. 自定义客户端连接在某些情况下,可能需要自定义超过可以使用HTTP参数的HTTP消息来设置线路传输方式,以便能够处理非标准,不符合规定的行为。例如,对于网络爬虫,可能需要强制HttpClient接受格式错误的响应头,以便挽救消息的内容。通常,插入自定义消息解析器或自定义连接实现的过程涉及几个步骤:提供一个自定义LineParser / LineFormatter翻译 2017-05-12 15:06:10 · 717 阅读 · 0 评论