1. 程式人生 > >HTTP協議中request報文請求方法和狀態響應碼

HTTP協議中request報文請求方法和狀態響應碼

cti keep lang one com location 部分 AC url

  一個HTTP請求報文由4部分組成:

    1. 請求行(request line)
    2. 請求頭部(header)
    3. 空行
    4. 請求數據

  下圖給出了請求報文的一般格式:

技術分享圖片

  請求行中包括了請求方法,常見的請求方法有:

  GET:從服務器獲取一個資源
  HEAD:只從服務器獲取文檔的響應首部
  POST:向服務器發送要處理的數據
  PUT:將請求的主體部分存儲在服務器上
  DELETE:請求刪除服務器上指定的文檔
  TRACE:追蹤請求到達服務器中間經過的代理服務器
  OPTIONS:請求服務器返回對指定資源支持使用的請求方法

  用百度搜索http時的Request報頭信息:

GET /s?wd=http&ie=utf-8&tn=94839763_hao_pg HTTP/1.1
Host: www.baidu.com
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Referer: https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=0&rsv_idx=1&tn=baidu&wd=http&rsv_pq=ef45e0e30001a4ba&rsv_t=4a37IT%2B5VmcChFM%2FQSS6rl4bOZAX61Q2PbU4CTa1x9RO%2BJzyUiQI1cD%2BDwc&rqlang=cn&rsv_enter=1&rsv_sug3=5&rsv_sug1=4&rsv_sug7=100&rsv_sug2=0&inputT=1596&rsv_sug4=1595&rsv_sug=2&__eis=1&__eist=335
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cookie: 

  常見的HTTP狀態響應碼(HTTP Status Code)包括:

  1xx:100-101,信息提示
  2xx:200-206,成功
  3xx:300-305,重定向
  4xx:400-415,錯誤類信息,客戶端錯誤
  5xx:500-505,錯誤類信息,服務器端錯誤
常見的狀態碼:
   200: 成功,請求的所有數據通過響應報文的entity-body部分發送;OK
   301: 請求的URL指向的資源已經被刪除;但在響應報文中通過首部Location指明了資源現在所處的新位置;Moved Permanently
   302: 與301相似,但在響應報文中通過Location指明資源現在所處臨時新位置;Found
   304: 客戶端發出了條件式請求,但服務器上的資源未曾發生改變,則通過響應此響應狀態碼通知客戶端;Not Modified
   401: 需要輸入賬號和密碼認證方能訪問資源;Unauthorized
   403: 請求被禁止;Forbidden
   404: 服務器無法找到客戶端請求的資源;Not Found
   500: 服務器內部錯誤;Internal Server Error
   502: 代理服務器從後端服務器收到了一條偽響應;Bad Gateway

  用百度搜索http時,請求成功的響應碼:

Request URL: https://www.baidu.com/s?wd=http&ie=utf-8&tn=94839763_hao_pg
Request Method: GET
Status Code: 200 OK
Remote Address: 163.177.151.109:443
Referrer Policy: no-referrer-when-downgrade

HTTP協議中request報文請求方法和狀態響應碼