http協議簡介<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
超文字傳送協議
是全球資訊網
( world wide web
,www
,也簡稱為
web )
的基礎。
伺服器(通常的
web
伺服器)與
客戶機(通常為網頁瀏覽器)之
間的會話
下面對這一過程進行詳細分析。 (
1)客戶機與伺服器建立連線
與伺服器建立連線,就是與
socket
建立連線,因此要指定機器名稱、資源名
稱和埠號,可以通過
url
來提供這些資訊。
url
的格式為:
://位址
>/[
埠號]/[
路徑][?<
查詢資訊
>]
,例如:
[url]
資源的預設值是
index
或default
,埠號預設為80。(2)
客戶向伺服器提出請求
請求資訊包括希望返回的檔名和客戶機資訊。客戶機資訊以請求頭髮送給服
務器,請求頭包括
方法和頭字段。
方法常用的有
get、
head
、post
,而put
、delete
、link
、unlink
方法許多
伺服器都不使用。
頭欄位(通常叫做
頭)包括: 。
date
:請求傳送的日期和時間 。
pargma
:用於向伺服器傳輸與實現無關的資訊。這個欄位還用於告訴**
伺服器,要從實際伺服器而不是從快取記憶體取資源 。
forwarded
:可以用來追蹤機器之間,而不是客戶機和伺服器的訊息。這
個字段可以用來追蹤在**伺服器之間的傳遞路由。 。
message_id
:用於唯一地標識訊息 。
accept
: 通知伺服器客戶所能接受的資料型別和尺寸。(
*/*表示可以接受
所有型別的資料。 。
aothorization
:向伺服器提供旁路安全保護和加密機制,若伺服器
不需要這個字段,則不提供這個字段 。
from 。
if-modefied-since
用於提供條件
get。如果所請求的文件自從所指定的
日期以來沒有發生變化,則伺服器應不傳送該物件。如果所傳送的日期格式不合法,
或晚於伺服器的日期,伺服器會忽略該欄位。 。
beferrer
:向伺服器進行資源請求用到的物件 。
mime-vertion
:用於處理不同型別檔案的
mime
協議版本號 。
user-agent
:有關發出請求的客戶資訊
(3)伺服器對請求作出應答
伺服器收到乙個請求,就會立刻解釋請求中所用到的方法,並開始處理應答。
伺服器的應答訊息也包含頭欄位形式的報文資訊。
報文第一行是狀態行,格式為:
版本號><
狀態**
><
解釋短語
>
狀態碼是個三位數字碼,分為四類:
。以2 開頭,表示請求被成功處理
。以3 開頭,表示請求被重定向
。以4 開頭,表示客戶的請求有錯
。以5 開頭,表示伺服器不能滿足請求
例如,訪問乙個不存在的網頁或目錄時返回的響應,注意
瀏覽器的標題欄中的**
404就是返回的狀態碼:
解釋短語是對狀態碼的解釋。例如
not found
是對404
的解釋。
響應報文除了返回狀態行,還向客戶返回幾個頭欄位,如: 。
date
:伺服器的時間 。
last-modified
:網頁最後被修改的時間 。
server
:伺服器資訊 。
content _type
:資料型別 。
retry_after
:伺服器太忙時返回這個字段 。
www_authenticate
:當伺服器的安全機制要求客戶傳送某中授權資訊時
使用該欄位
報文最後是實體資訊,即客戶請求得到的
伺服器上的資源內容。 (
4)關閉客戶與伺服器之間的連線
HTTP協議簡介
現在web發展如火如荼,web開發人員也越來越多,但有幾個對支援web的http協議有了解呢?底層協議基礎不紮實,高層應用是很難做到極致的。帶著好奇心,開始學習吧!http hypertext transfer protocol 即超文字傳輸協議,是瀏覽器和伺服器之間互相通訊的一種約定,通過網際網路...
HTTP協議 簡介
全稱為超文字傳輸協議 hypertext transfer protocol 設計之初是為了將超文字標記語言 html 文件從web伺服器傳送到客戶端的瀏覽器。現在http的作用已不侷限於html的傳輸。url url示例 解釋 scheme 指定低層使用的協議 例如 http,https,ftp ...
http協議簡介
摘要 本文 go web程式設計 一書,覺得說的比較好,特轉過來收藏。我們平時瀏覽網頁的時候,會開啟瀏覽器,輸入 後按下回車鍵,然後就會顯示出你想要瀏覽的內容。在這個看似簡單的使用者行為背後,到底隱藏了些什麼呢?對於普通的上網過程,系統其實是這樣做的 瀏覽器本身是乙個客戶端,當你輸入url的時候,首...