[HTTP][狀態碼和請求方式][二][學習筆記]
1.狀態碼
HTTP響應狀態碼表示特定HTTP請求是否成功完成。有五種類型
1.1信息響應(100-199)
100 Continue
這個臨時響應表明,所有內容是可行的,客戶端應繼續請求,如果已經完成則忽略。
101 Switching Protocols
響應客戶端的Upgrade請求頭發送的,表明服務器即將切換的協議。
103 Early Hints
主要用于與Link鏈接頭一起使用,允許用戶代理在服務器準備響應階段時開始預加載資源
1.2.成功響應(200-299)
200 OK
請求成功,具體指HTTP方法:
GET: 資源已被提取并在消息正文中傳輸。
HEAD: 實體標頭位于消息正文中。
PUT or POST: 描述動作結果的資源在消息體中傳輸。
TRACE: 消息正文包含服務器收到的請求消息。
201 Created
請求成功,并因此創建了一個新的資源。這通常是在POST請求后返回的響應。
202 Accepted
請求已經接收到,但未響應,沒結果。意味著不會有一個異步的響應表明當前請求的結果,預期另外的進程和服務去處理請求或者批處理。
203 Non-Authoritative Information
服務器成功處理請求,但返回實體頭部元信息不在原始服務器上有效的確定集合,而是來自本地或者第三方拷貝。當前的信息可能是原始版本子集或者超集。例如,包含資源的元數據可能導致原始服務器知道元信息的超集。使用此狀態碼不是必須的,而且只有在響應不使用此狀態碼便會返回200 OK的情況下才是合適的。
204 No Content
對于該請求沒有的內容可發送,但頭部字段可能有用。用戶代理可能會用此時請求頭部信息來更新原來資源的頭部緩存字段。
205 Reset Content
告訴用戶代理重置發送此請求的文檔。
206 Partial Content
當從客戶端發送Range范圍標頭以只請求資源的一部分時,將使用此響應代碼。
1.3.重定向消息(300-399)
300 Multiple Choice
請求擁有不止一個響應。用戶應當從中選擇一個。
301 Moved Permanently
請求資源的URL已永久更改。在響應中給出了新的URL。
302 Found
此響應代碼表示所請求資源的URI已暫時更改。
303 See Other
服務器發送此響應,以指示客戶端通過一個GET請求在另一個URI中獲取所請求的資源。
304 Not Modified
這是用于緩存的目的。它告訴客戶端響應還沒有被修改,因此客戶端可以繼續使用相同的緩存版本的響應。
307 Temporary Redirect
服務器發送此響應,以指示客戶端使用在前一個請求中使用的相同方法在另一個URI上獲取所請求的資源。這與302 FoundHTTP響應代碼具有相同的語義,但用戶代理 不能 更改所使用的HTTP方法:如果在第一個請求中使用了POST,則在第二個請求中必須使用POST
308 Permanent Redirect
這意味著資源現在永久位于由Location: HTTP Response 標頭指定的另一個 URI。 這與 301 Moved Permanently HTTP 響應代碼具有相同的語義,但用戶代理不能更改所使用的 HTTP 方法:如果在第一個請求中使用 POST,則必須在第二個請求中使用 POST。
1.4.客戶端錯誤響應(400-499)
400 Bad Request
客戶端錯誤,服務器無法或不會處理請求。
401 Unauthorized
客戶端必須對自身進行身份驗證才能獲得請求的響應。
403 Forbidden
客戶端沒有訪問內容的權限。與401 Unauthorized不同,服務器知道客戶端的身份。
404 Not Found
服務器找不到請求的資源。在瀏覽器中意味著無法識別URL。在API中意味著端點有效,但資源本身不存在。服務器也可以發送此響應,而不是403 Forbidden,以向未經授權的客戶端隱藏資源的存在。
405 Method Not Allowed
服務器知道請求方法,但目標資源不支持該方法。例如,API可能不允許調用DELETE來刪除資源。
406 Not Acceptable
當web服務器在執行服務端驅動型內容協商機制后,沒有發現任何符合用戶代理給定標準的內容時,就會發送此響應。
服務端驅動型內容協商機制:在 HTTP 協議中,內容協商是這樣一種機制,通過為同一 URI 指向的資源提供不同的展現形式,可以使用戶代理選擇與用戶需求相適應的最佳匹配(例如,文檔使用的自然語言,圖片的格式,或者內容編碼形式)。
407 Proxy Authentication Required
類似于 401 Unauthorized 但是認證需要由代理完成.。
408 Request Timeout
此響應由一些服務器在空閑連接上發送,即使客戶端之前沒有任何請求。這意味著服務器想關閉這個未使用的連接。由于現在瀏覽器都使用HTTP預連接機制來加速上網,所以這種響應很多使用。
409 Conflict
當請求與服務器的當前狀態沖突時,將發送此響應。
410 Gone
當請求的內容已從服務器中永久刪除且沒有轉發地址時,將發送此響應。
411 Length Required
服務端拒絕該請求因為 Content-Length 頭部字段未定義但是服務端需要它.
412 Precondition Failed
客戶端在其頭文件中指出了服務器不滿足的先決條件。
413 Payload Too Large
請求實體大于服務器定義的限制。服務器可能會關閉連接,或在標頭字段后返回重試Retry-After。
414 URI Too Long
客戶端請求的URI比服務器愿意接收的長度長。
415 Unsupported Media Type
服務器不支持請求數據的媒體格式,因此服務器拒絕請求。
416 Range Not Satisfiable
無法滿足請求中Range標頭字段指定的范圍。該范圍可能超出了目標URI數據的大小。
417 Expectation Failed
此響應代碼表示服務器無法滿足Expect請求標頭字段所指示的期望。
418 I’m a teapot
服務端拒絕用茶壺煮咖啡。
茶壺煮咖啡是一個IETF(互聯網工程任務組)在1998年愚人節時發布的一個笑話RFC。稱為超文本咖啡壺控制協議。
426 Upgrade Required
服務器拒絕使用當前協議執行請求,但在客戶端升級到其他協議后可能愿意這樣做。
429 Too Many Requests
用戶在給定的時間內發送了太多請求(“限制請求速率”)
431 Request Header Fields Too Large
服務器不愿意處理請求,因為其頭字段太大。在減小請求頭字段的大小后,可以重新提交請求。
1.5.服務端錯誤響應(500-599)
500 Internal Server Error
服務器遇到了不知道如何處理的情況。
501 Not Implemented
服務器不支持請求方法,因此無法處理。服務器需要支持的唯二方法(因此不能返回此代碼)是 GET and HEAD.
502 Bad Gateway
表明服務器作為網關需要得到一個處理這個請求的響應,但得到一個錯誤的響應。
503 Service Unavailable
服務器沒有準備好處理請求。常見原因是服務器因維護或重載而停機。
504 Gateway Timeout
當服務器充當網關且無法及時獲得響應時,會給出此錯誤響應。
505 HTTP Version Not Supported
服務器不支持請求中使用的HTTP版本。
506 Variant Also Negotiates
服務器存在內部配置錯誤:所選的變體資源被配置為參與透明內容協商本身,因此不是協商過程中的適當終點。
510 Not Extended
服務器需要對請求進行進一步擴展才能完成請求。
511 Network Authentication Required
指示客戶端需要進行身份驗證才能獲得網絡訪問權限。
2.HTTP請求方式
HTTP定義了一組請求方法,以表明要對給定資源執行的操作。指示針對給定資源要執行的期望動作。雖然他們也可以是名詞, 但這些請求方法有時被稱為HTTP動詞。
2.1.GET
GET方法請求一個指定資源的表示形式,使用GET的請求應該只被用于獲取數據。
GET /index.html
2.2.HEAD
HEAD方法請求一個與GET請求的響應相同的響應,但沒有響應體。
HEAD /index.html
2.3.POST
POST方法用于將實體提交到指定的資源,通常導致在服務器上的狀態變化或副作用。
POST /test
2.4.PUT
PUT方法用請求有效載荷替換目標資源的所有當前表示。
PUT /new.html HTTP/1.1
2.5.DELETE
DELETE方法刪除指定的資源。
DELETE /file.html HTTP/1.1
2.6.CONNECT
CONNECT方法建立一個到由目標資源標識的服務器的隧道。
CONNECT www.example.com:443 HTTP/1.1
2.7.OPTIONS
OPTIONS方法用于描述目標資源的通信選項。
OPTIONS /index.html HTTP/1.1 OPTIONS * HTTP/1.1
2.8.TRACE
TRACE方法沿著到目標資源的路徑執行一個消息環回測試。
TRACE /index.html
2.9.PATCH
PATCH方法用于對資源應用部分修改。
PATCH /file.txt HTTP/1.1
HTTP TCP/IP
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。