阅读本文大概需要 3 分钟。为了更方便在服务端调用 HTTP 请求,微软在 .NET Framework 4.x 的时候引入了 HttpClient。但 HttpClient 有很多严重问题,一直饱受诟病,比如 InfoQ 的这篇文章 t.
说明:由于头条不支持上传文件,也不直接支持Markdown等,特别是不支持实时效果。上面几篇都是先转为html页面,再粘贴到头条,效果很差。所以这篇尝试v录屏为"动图"的方式来展示效果,可能消耗流量比较大。试试看效果怎么样!
HttpClient是Apache基金会的一个开源网络库, 功能十分强大, API数量众多, 但是正是由于庞大的API数量使得我们很难在不破坏兼容性的情况下对它进行升级和扩展, 所以Android团队在提升和优化HttpClient方面的工作态度并不积极. HttpURLConnection是一种多用途, 轻量极的HTTP客户端, 提供的API比较简单, 可以容易地去使用和扩展. 不过在Android 2.2版本之前, HttpURLConnection一直存在着一些令人厌烦的bug. 比如说对一个可读的InputStream调用close方法时,就有可能会导致连接池失效了。