======URLConnection 和 HttpClient的区别======

对比项目URLConnectionHTTPClient
提交方式(Methods)HEAD, GET, POST, PUT, DELETE, TRACE, OPTIONSHEAD, GET, POST, PUT, DELETE, TRACE, OPTIONS, WEBDav, IPP, 甚至各种自定义提交方式
响应(Response Codes)只能获取http状态码小于400的状态码,响应头信息(headers),响应内容.对于响应状态码为4xx或者5xx获取response的任何信息都只会抛出IOException任何时候都可以获取响应的任何信息:响应状态码,响应头信息,响应内容信息等等。
代理和SOCKS支持,SOCKS仅支持4支持,SOCKS支持4和5
认证(Authorization)支持Basic、早期的Digest JDK1.2+(不支持现在的Digest authentication),甚至不能处理apache返回的Digest信息支持Basic、Digest Authentication、自定义的其他认证方案
Cookies不支持支持
请求输出流
(True request output streams)
请求发送之前,所有的数据都被缓存起来通过socket直接输出HttpOutputStream
响应输入流
(True response input streams)
JDK1.2-支持,1.3+不支持chunked encoding(不支持大多数推送服务器的响应)支持
长连接
(Persistent Connections)
JDK1.2- HTTP/1.0 Keep-Alive,JDK1.3+  HTTP/1.1 Persistent支持HTTP/1.0 Keep-Alive 和 HTTP/1.1 Persistent
Pipelining of Requests不支持支持
设置超时不支持支持
处理HTTP之外的协议支持如:ftp, gopher, mailto,文件系统不支持
处理HTTPs支持部分SSL,如JSSE,前提是客户端必须安装可以通过补丁的方式使用免费或者收费的SSL
开源



    为什么java中java.net.**包下已经有了相关的网络通信的方式,Android中还要多此一举呢(加入org.apache.http.**相关的网络通信方式),很明显前者已经不能满足相关的需求,显得很陈旧。

    











  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值