HTTP協議是Hyper Text Transfer Protocol(超文本傳輸協議)的縮寫,是用于從萬維網(WWW:World Wide Web )服務器基于TCP/IP通信協議來傳遞超文本到本地瀏覽器的傳送協議。
HTTP 工作原理
HTTP協議工作于客戶端-服務端架構上。瀏覽器作為HTTP客戶端通過URL向HTTP服務端即WEB服務器發送所有請求。(Apache服務器,IIS服務器(Internet Information Services))Web服務器根據接收到的請求后,向客戶端發送響應信息。HTTP默認端口號為80,但是你也可以改為8080或者其他端口。
HTTP三點注意事項:
HTTP是無連接:無連接的含義是限制每次連接只處理一個請求。服務器處理完客戶的請求,并收到客戶的應答后,即斷開連接。采用這種方式可以節省傳輸時間。
HTTP是媒體獨立的:這意味著,只要客戶端和服務器知道如何處理的數據內容,任何類型的數據都可以通過HTTP發送。客戶端以及服務器指定使用適合的MIME-type內容類型。
HTTP是無狀態:HTTP協議是無狀態協議。無狀態是指協議對于事務處理沒有記憶能力。缺少狀態意味著如果后續處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數據量增大。另一方面,在服務器不需要先前信息時它的應答就較快。
HTTP 協議的 8 種請求類型:
HTTP 協議中共定義了八種方法或者叫“動作”來表明對 Request-URI 指定的資源的不同操作方式,具體介紹如下:
?OPTIONS:返回服務器針對特定資源所支持的HTTP請求方法。也可以利用向Web服務器發送'*'的請求來測試服務器的功能性。
?HEAD:向服務器索要與GET請求相一致的響應,只不過響應體將不會被返回。這一方法可以在不必傳輸整個響應內容的情況下,就可以獲取包含在響應消息頭中的元信息。
?GET:向特定的資源發出請求。
?POST:向指定資源提交數據進行處理請求(例如提交表單或者上傳文件)。數據被包含在請求體中。POST請求可能會導致新的資源的創建和/或已有資源的修改。
?PUT:向指定資源位置上傳其最新內容。
?DELETE:請求服務器刪除 Request-URI 所標識的資源。
?TRACE:回顯服務器收到的請求,主要用于測試或診斷。
?CONNECT:HTTP/1.1 協議中預留給能夠將連接改為管道方式的代理服務器。
HTTP狀態碼的英文為HTTP Status Code。
下面是常見的HTTP狀態碼:
????1、200 - 請求成功
????2、301 - 資源(網頁等)被永久轉移到其它URL
????3、404 - 請求的資源(網頁等)不存在
????4、500 - 內部服務器錯誤