1. 程式人生 > >JAVA 基礎 HTTP的介紹

JAVA 基礎 HTTP的介紹

plain input 服務器 組件 oid req target tip web服務

目錄

  http的方法

  http請求頭Content-Type編碼指定

  form表單

  httpClient的使用(圖片來自於網絡)

http的方法

OPTIOINS 返回服務器針對特定資源所支持的HTTP請求方法,也可以利用向Web服務器發送"*"請求測試服務器的功能性

HEAD    向服務器索與GET請求相一致的響應,只不過響應體將不會被返回,這一方法可以在不必傳輸整個響應內容的情況下,就可以獲取包含響應消息頭中的元信息

GET 向特定的資源發出請求,它本質就是發送一個請求來取得服務器上的某一資源,資源通過一組HTTP頭和呈現數據(如HTML文本,或者圖片或者視頻等)返回給客戶端,GET請求中,永遠不會包含呈現數據

PUT 向指定資源位置上傳其最新內容

DELTE 請求服務器刪除Request-URL鎖標識的資源

TRACE 回顯服務器收到的請求,主要用戶測試或診斷

CONNECT  HTTP1.1協議中預留給能夠連接改為管道方式的代理服務器

http請求頭Content-Type編碼指定

application/x-www-form-urlencoded 數據被編碼為名稱/值對,這是標準的編碼格式

multipart/form-data       數據被編碼為一條消息,頁上的每個控件對應消息中的一個部分

text/plain             據以純文本形式(text/json/xml/html)進行編碼,其中不含任何控件或格式字符

application/json          作為響應頭Content-Type,用來告訴服務端消息主題是序列化後的JSON字符串,JSON格式支持筆鍵值對復雜得多的結構化數據

form表單

參數介紹

  action(url) method(post or get) enctype (提交數據的編碼格式)

常見的編碼方式與語法 (enctype屬性指定將數據回發到服務器時瀏覽器使用的編碼類型)

  application/x-www-form-urlencoded 當action為get,數據被編碼為名稱/值對(默認的編碼格式)

  multipart/form-data 當action為post時,瀏覽器把form數據封裝到http body中,然後發送到server

提交方式

  無刷新頁面表單:表單可實現無刷新頁面提交,無需頁面跳轉,通過一個隱藏的iframe實現,form表單的target設置為info,iframe的name名稱也未info,form提交目標為當前頁面iframe則不會刷新頁面

  通過type=submit 提交或者<button type=‘submit‘>

  js提交form表單:js事件觸發表單提交,通過button,鏈接等觸發事件,js調用submit()方法提交表單數據

  ajax異步提交表單數據:采用ajax異步方式,通過js獲取form中所有input,select等組件的值,組成JSON格式,通過異步的方式與服務器端進行交換,一般將表單數據傳送給服務器端,服務器端處理數據並返回結果信息

  頁面無跳轉:如果通過form表單提交請求服務端去下載文件,這時當前頁面不會跳轉,服務端返回void,通過response去寫數據,頁面會顯示下載文件

  form表單上傳文件:使用form表單進行上傳文件需要為form添加enctyp="multipart/form-data"屬性,除此之外還需要將表單的提交方法改為post
  

httpClient的使用(圖片來自於網絡)

httpclient3.x

技術分享圖片

httpclient4.x到httpclient4.3以下

技術分享圖片

httpclient4.3以上

技術分享圖片

JAVA 基礎 HTTP的介紹