httpclient

    HttpClient 是Apache Jakarta Common 下的子項目,能夠用來提供高效的、最新的、功能豐富的支持 HTTP 協議的客戶端編程工具包,而且它支持 HTTP 協議最新的版本和建議。java

 

介紹

編輯
HTTP 協議多是如今 Internet 上使用得最多、最重要的協議了,愈來愈多的 Java 應用程序須要直接經過 HTTP 協議來訪問網絡資源。雖然在 JDK 的 java net包中已經提供了訪問 HTTP 協議的基本功能,可是對於大部分應用程序來講,JDK 庫自己提供的功能還不夠豐富和靈活。HttpClient 是 Apache Jakarta Common 下的子項目,用來提供高效的、最新的、功能豐富的支持 HTTP 協議的客戶端編程工具包,而且它支持 HTTP 協議最新的版本和建議。HttpClient 已經應用在不少的項目中,好比 Apache Jakarta 上很著名的另外兩個開源項目 Cactus 和 HTMLUnit 都使用了 HttpClient。如今HttpClient最新版本爲 HttpClient 4.5 .6(2015-09-11)

 

功能

編輯
如下列出的是 HttpClient 提供的主要的功能,要知道更多詳細的功能能夠參見 HttpClient 的主頁。
(1)實現了全部 HTTP 的方法(GET,POST,PUT,HEAD 等)
(2)支持自動轉向
(3)支持 HTTPS 協議
(4)支持代理服務器

 

基本功能

編輯
(1) GET方法
使用 HttpClient 須要如下 6 個步驟:
1. 建立 HttpClient 的實例
2. 建立某種鏈接方法的實例,在這裏是GetMethod。在 GetMethod 的構造函數中傳入待鏈接的地址
3. 調用第一步中建立好的實例的 execute 方法來執行第二步中建立好的 method 實例
4. 讀 response
5. 釋放鏈接。不管執行方法是否成功,都必須釋放鏈接
6. 對獲得後的內容進行處理

 

基本功能

編輯
(1) GET方法
使用 HttpClient 須要如下 6 個步驟:
1. 建立 HttpClient 的實例
2. 建立某種鏈接方法的實例,在這裏是GetMethod。在 GetMethod 的構造函數中傳入待鏈接的地址
3. 調用第一步中建立好的實例的 execute 方法來執行第二步中建立好的 method 實例
4. 讀 response
5. 釋放鏈接。不管執行方法是否成功,都必須釋放鏈接
6. 對獲得後的內容進行處理

 

(2)POST方法
根據RFC2616,對POST的解釋以下:POST方法用來向目的服務器發出請求,要求它接受被附在請求後的實體,並把它看成請求隊列(Request-Line)中請求URI所指定資源的附加新子項。POST被設計成用統一的方法實現下列功能:
對現有資源的註釋(Annotation of existing resources)
向電子公告欄、新聞組郵件列表或相似討論組發送消息
提交數據塊,如將表單的結果提交給數據處理過程
經過附加操做來擴展數據庫
調用HttpClient中的PostMethod與GetMethod相似,除了設置PostMethod的實例與GetMethod有些不一樣以外,剩下的步驟都差很少

 

常見問題

字符編碼,自動轉向,處理HTTPS協議web

 

=====================================================================數據庫

Apache HTTPCLIENT 官網介紹譯文

 

生命的結束

Commons HttpClient項目如今已經結束,再也不開發了。它的HttpClient和HttpCore模塊中的Apache HttpComponents項目已經取代了它,這兩個模塊提供了更好的性能和更大的靈活性。編程

 

------------------------------------------------------------------------------------------------------------------------------------瀏覽器

介紹服務器

超文本傳輸協議(HTTP)多是當今互聯網上使用的最重要的協議。
Web服務、網絡設備和網絡計算的發展繼續擴大HTTP協議的做用除了用戶驅動的Web瀏覽器,同時增長的數量須要HTTP的應用程序supportAlthough java.net包爲經過HTTP訪問資源提供了基本的功能,它不提供全面的靈活性或功能,須要由許多應用程序。
Jakarta Commons HttpClient組件經過提供一個高效的、最新的、功能豐富的包來實現最新HTTP標準和建議的客戶端,從而填補這一空白。
有關爲擴展而設計的標準聽從性和功能的更多細節,請參閱Features頁面,同時提供對基本HTTP協議的健壯支持,任何人均可能對HttpClient組件感興趣。
構建HTTP感知的客戶機應用程序,如web瀏覽器、web服務客戶機或利用或擴展HTTP協議fol分佈式通訊的系統。
有許多項目使用HttpClient來提供核心HTTP功能。
其中一些是開放源碼的,帶有您能夠在web上找到的項目頁面,而另外一些是您永遠不會看到或據說的封閉源碼。
Apache源代碼許可爲源代碼和二進制重用提供了最大的靈活性。
請參閱使用HttpClient的項目的應用程序頁面。
網絡

 

------------------------------------------------------------------------------------------------------------------------------------分佈式

歷史ide

HistoryttpClient建立於2001年,是Jakarta Commons的一個子項目,基於Jakarta Slide項目開發的代碼。
2004年,它退出了下議院,轉而參與雅加達的另外一個項目。
2005年,在Jakarta建立了HttpComponents項目,其任務是開發HttpClient 3的繼任者。
並維護現有的代碼庫,直到新的代碼庫準備好接管爲止。
HttpClient的搖籃ommons項目於2007年離開雅加達,成爲一個獨立的頂級項目。
同年晚些時候,這個ttpComponents項目也離開了Jakarta,成爲一個獨立的頂級項目,負責維護HttpClient。
函數

(部份內容來源於百度百科) 

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息