【背景】
折腾:
【未解决】java中没法new:Cannot instantiate the type HttpParams
期间,看到:
中,有很多个实现:
AbstractHttpParams, BasicHttpParams, DefaultedHttpParams, SyncBasicHttpParams |
但是不知道其具体有何区别,尤其是:
BasicHttpParams vs DefaultedHttpParams
【折腾过程】
1.后来是,看了:
HttpClient 初读–HttpParams 的层级结构
的结构图:
才算有点基本明白:
HttpParams是接口interface;
其实现是DefaultHttpParams
然后包含了HttpConnecttionParams(和另外两个:HostParams和HttpMethodParams)
而HttpConnectionManagerParams又是继承HttpConnecttionParams
而HttpClientParams是继承HttpMethodParams
2.至此,另外在:
中看到的,HttpConnectionParams,也才算有点概念。
3.然后,又去看看其所提到的:
HTTP_CONTENT_CHARSET
结果没发现:
HttpMethodParams.HTTP_CONTENT_CHARSET
后来是去找到了,是在:
中有:
|
4.对应的,也容易看出:
HTTP_CONTENT_CHARSET vs HTTP_ELEMENT_CHARSET
的话是:
- HTTP_CONTENT_CHARSET:是指的是html返回的response的body,才是我们常常所关心的,html的charset
- HTTP_ELEMENT_CHARSET:是指的是,发送http的request时候的charset
【总结】
java中的http相关的库的东西和概念,真的够多,很容易搞混。。。
转载请注明:在路上 » 【基本解决】HttpParams中的BasicHttpParams vs DefaultedHttpParams以及CoreProtocolPNames中的HTTP_CONTENT_CHARSET vs HTTP_ELEMENT_CHARSET