導航:首頁 > 知識科普 > 返回狀態碼方法有哪些

返回狀態碼方法有哪些

發布時間:2025-02-20 14:40:53

Ⅰ HTTP請求,返回狀態碼詳解

HTTP協議,即超文本傳輸協議,是網際網路上應用最為廣泛的一種網路傳輸協議。所有的WWW文件都必須遵守這個標准,基於TCP/IP通信協議來傳遞數據。

HTTP是一個基於客戶端/服務端(C/S)架構模型的協議,通過一個可靠的鏈接來交換信息,是一個無狀態的請求/響應協議。一個HTTP "客戶端"是一個應用程序(如Web瀏覽器或其他),通過連接到伺服器來發送一個或多個HTTP的請求。一個HTTP "伺服器"同樣是一個應用程序(通常是Web服務,如Apache Web伺服器或IIS伺服器等),通過接收客戶端的請求並向客戶端發送HTTP響應數據。

HTTP 使用統一資源標識符(URI)來傳輸數據和建立連接。HTTP 請求包括以下四個部分:請求行(request line)、請求頭部(header)、空行和請求數據。HTTP1.0定義了三種請求方法(GET, POST 和 HEAD方法),而HTTP1.1新增了五種(OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法)。

HTTP 請求方式包括:

GET請求指定頁面信息並返回實體主體。

HEAD請求類似GET,但不返回內容,僅用於獲取報頭。

POST向指定資源提交數據進行處理請求,可能用於提交表單或上傳文件。可能有副作用,如用戶注冊、登錄等。

PUT從客戶端向伺服器傳送數據以替換指定的文檔。

DELETE請求伺服器刪除指定的頁面。

CONNECT用於將連接改為管道方式。

OPTIONS允許客戶端查看伺服器的性能。

TRACE回顯伺服器收到的請求,主要用於測試或診斷。

HTTP狀態碼分為四大類:

1xx信息提示:表示臨時響應,客戶端在收到常規響應之前應准備接收一個或多個1xx響應。

2xx成功:表示伺服器成功處理了客戶端的請求。

3xx重定向:需要進一步的操作以完成請求。

4xx客戶端錯誤:請求包含語法錯誤或無法完成請求。

5xx伺服器錯誤:伺服器在處理請求的過程中發生了錯誤。

1xx狀態碼包括:

100 Continue:繼續;初始請求已經接受,客戶端應繼續發送請求的其餘部分。

101 Switching Protocols:切換協議;伺服器將遵從客戶端請求轉換到另外一種協議。

2xx狀態碼包括:

200 OK:正常;對GET和POST請求的應答文檔跟在後面。

201 Created:已創建;伺服器已經創建了文檔,Location頭給出了它的URL。

202 Accepted:接受;已經接受請求,但處理尚未完成。

203 Non-Authoritative Information:非權威的信息;文檔已經正常地返回,但一些應答頭可能不正確,因為使用的是文檔的拷貝,非權威性信息。

204 No Content:沒有內容;瀏覽器應該繼續顯示原來的文檔。

205 Reset Content:重置內容;瀏覽器應該重置它所顯示的內容。

206 Partial Content:部分內容;客戶發送了一個帶有Range頭的GET請求,伺服器完成了它。

207 多狀態:緊跟消息體後面的是xml消息並且包含了多個單獨的響應狀態碼,響應的數量取決於子請求的個數。

208 已經報告:一個DAV的綁定成員被前一個請求枚舉,並且沒有被再一次包括。

226 IM Used:伺服器已經滿足了請求所要的資源,並且響應是一個或者多個實例操作應用於當前實例的結果。

3xx狀態碼包括:

300 Multiple Choices:客戶請求的文檔可以在多個位置找到,這些位置已經在返回的文檔內列出。如果伺服器要提出優先選擇,則應該在Location應答頭指明。

301 Moved Permanently:永久移動;客戶請求的文檔在其他地方,新的URL在Location頭中給出,瀏覽器應該自動地訪問新的URL。

302 Found:發現;但新的URL應該被視為臨時性的替代,而不是永久性的。注意,在HTTP1.0中對應的狀態信息是「Moved Temporarily」。出現該狀態代碼時,瀏覽器能夠自動訪問新的URL,因此它是一個很有用的狀態代碼。注意這個狀態代碼有時候可以和301替換使用。例如,如果瀏覽器錯誤地請求 host/~user (缺少了後面的斜杠),有的伺服器返回301,有的則返回302。嚴格地說,我們只能假定只有當原來的請求是GET時瀏覽器才會自動重定向。

303 See Other:類似於301/302,不同之處在於,如果原來的請求是POST,Location頭指定的重定向目標文檔應該通過GET提取。

304 Not Modified:客戶端有緩沖的文檔並發出了一個條件性的請求(一般是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。伺服器告訴客戶,原來緩沖的文檔還可以繼續使用。

305 Use Proxy:客戶請求的文檔應該通過Location頭所指明的代理伺服器提取。

306 切換代理:不再使用。原意是隨後的請求應該使用指定的代理。

307 Temporary Redirect:許多瀏覽器會錯誤地響應302應答進行重定向,即使原來的請求是POST,即使它實際上只能在POST請求的應答是303時才能重定向。由於這個原因,HTTP 1.1新增了307,以便更加清除地區分幾個狀態代碼:當出現303應答時,瀏覽器可以跟隨重定向的GET和POST請求;如果是307應答,則瀏覽器只能跟隨對GET請求的重定向。

308 永久轉移:這個請求和以後的請求都應該被另一個URI地址重新發送。307、308和302、301有相同的表現,但是不允許HTTP方法改變。

4xx狀態碼包括:

400 Bad Request:錯誤請求;請求出現語法錯誤。

401 Unauthorized:未授權;訪問被拒絕,客戶試圖未經授權訪問受密碼保護的頁面。應答中會包含一個WWW-Authenticate頭,瀏覽器據此顯示用戶名字/密碼對話框,然後在填寫合適的Authorization頭後再次發出請求。IIS 定義了許多不同的 401 錯誤,它們指明更為具體的錯誤原因。

402 Need Payment:需要付款;為以後保留使用,原意是該狀態碼可被用於一些數字貨幣或者是微支付,但是目前還沒有普及,所以這些代碼不經常被使用。

403 Forbidden:禁止訪問;資源不可用。伺服器理解客戶的請求,但拒絕處理它。通常由於伺服器上文件或目錄的許可權設置導致。

404 Not Found:找不到;無法找到指定位置的資源。

404.0:沒有找到文件或目錄。

404.1:無法在所請求的埠上訪問 Web 站點。

404.2:Web 服務擴展鎖定策略阻止本請求。

404.3:MIME 映射策略阻止本請求。

405 Method Not Allowed:方法不允許;請求方法對指定的資源不適用。

406 Not Acceptable:不可接受;指定的資源已經找到,但其MIME類型和客戶在Accpet頭中所指定的不兼容。

407 Proxy Authentication Required:需要代理認證;要求進行代理身份驗證。

408 Request Timeout:請求超時;在伺服器許可的等待時間內,客戶一直沒有發出任何請求。

409 Conflict:沖突;通常和PUT請求有關。由於請求和資源的當前狀態相沖突,因此請求不能成功。

410 Gone:文檔已經不再可用,且伺服器不知道應該重定向到哪一個地址。它和404的不同在於,返回407表示文檔永久地離開了指定的位置,而404表示由於未知的原因文檔不可用。

411 Length Required:長度要求;伺服器不能處理請求,除非客戶發送一個Content-Length頭。

412 Precondition Failed:前置條件失敗;請求頭中指定的一些前提條件失敗。

41

閱讀全文

與返回狀態碼方法有哪些相關的資料

熱點內容
筆記本電腦手繪板使用方法 瀏覽:52
荒野亂斗正確使用方法 瀏覽:441
食管最簡單易行的診斷方法是 瀏覽:563
電力設備全壽命周期費用計算方法 瀏覽:763
緊張症的治療陪護方法 瀏覽:546
小孩子胃痛最簡單止痛方法 瀏覽:940
全包入戶最簡單方法 瀏覽:440
異形梁混凝土工程量計算方法 瀏覽:500
扁平疣的簡單治療方法 瀏覽:562
虛擬區域網的劃分方法在哪裡 瀏覽:367
切割刀的使用方法圖片 瀏覽:636
無線耳機使用方法 瀏覽:398
漁具主線連接方法 瀏覽:17
如何提高記憶力快速背書的方法 瀏覽:204
小米定時鬧鈴在哪裡設置方法 瀏覽:181
二極體平均值和有效值的計算方法 瀏覽:479
鐵皮石斛最好用什麼方法清理 瀏覽:232
汽車止震板安裝方法圖片 瀏覽:408
芸苔素水稻種植方法 瀏覽:898
780除以50計算方法 瀏覽:922