Python Requests庫 Get和Post的區別和Http常見狀態碼

(1)   在客戶端,Get方式在經過URL提交數據,數據在URL中能夠看到;POST方式,數據放置在HTML HEADER內提交。安全

(2)   GET方式提交的數據最多隻能有1024 Byte,而POST則沒有此限制。服務器

(3)   安全性問題。正如在(1)中提到,使用 Get 的時候,參數會顯示在地址欄上,而 Post 不會。因此,若是這些數據是中文數據並且是非敏感數據,那麼使用get;若是用戶輸入的數據不是中文字符並且包含敏感數據,那麼仍是使用 post爲好。併發

 

表單提交中get和post方式的區別概括以下幾點:oop

(1)get是從服務器上獲取數據,post是向服務器傳送數據。post

(2)對於表單的提交方式,在服務器端只能用Request.QueryString來獲取Get方式提交來的數據,用Post方式提交的數據只能用Request.Form來獲取。大數據

(3)通常來講,儘可能避免使用Get方式提交表單,由於有可能會致使安全問題。好比說在登錄表單中用Get方式,用戶輸入的用戶名和密碼將在地址欄中暴露無遺。可是在分頁程序中,用Get方式就比用Post好。ui

 

HTTP POST和GET的區別

一、HTTP 只有POST和GET 兩種命令模式;

二、 POST 是被設計用來向上放東西的,而GET是被設計用來從服務器取東西的,GET也可以向服務器傳送較少的數據,而Get之因此也能傳送數據,只是用來設計告訴 服務器,你到底須要什麼樣的數據.POST的信息做爲HTTP 請求的內容,而GET是在HTTP 頭部傳輸的;

三、POST與GET在HTTP 中傳送的方式不一樣,GET的參數是在HTTP 的頭部傳送的,而Post的數據則是在HTTP 請求的內容裏傳送;

四、POST傳輸數據時,不須要在URL中顯示出來,而GET方法要在URL中顯示;

五、 GET方法因爲受到URL長度的限制,只能傳遞大約1024字節;POST傳輸的數據量大,能夠達到2M,而根據微軟方面的說法,微軟對用 Request.Form() 可接收的最大數據有限制,IIS 4 中爲 80 KB 字節,IIS 5 中爲 100 KB 字節;

六、SOAP是依賴於HTTP POST模式實現的;url

 

常見狀態碼

HTTP響應咱們提到狀態碼這個概念,狀態碼通常以1/2/3/4/5 開頭,以下所示:.net

1xx: 信息響應類,表示接收到請求而且繼續處理
2xx: 處理成功響應類,表示動做被成功接收、理解和接受
3xx: 重定向響應類,爲了完成指定的動做,必須接受進一步處理
4xx: 客戶端錯誤,客戶請求包含語法錯誤或者是不能正確執行
5xx: 服務端錯誤,服務器不能正確執行一個正確的請求設計

常見狀態碼以下所示:
1xx:信息

狀態碼 描述
100 Continue 服務器僅接收到部分請求,可是一旦服務器並無拒絕該請求,客戶端應該繼續發送其他的請求。
101 Switching Protocols 服務器轉換協議:服務器將聽從客戶的請求轉換到另一種協議。

2xx:信息

 

狀態碼 描述
200 OK 請求成功(其後是對GET和POST請求的應答文檔。)
201 Created 請求被建立完成,同時新的資源被建立。
202 Accepted 供處理的請求已被接受,可是處理未完成。

3xx:信息

狀態碼 描述
300 Multiple Choices 多重選擇。連接列表。用戶能夠選擇某連接到達目的地。最多容許五個地址。
301 Moved Permanently 所請求的頁面已經轉移至新的url。
302 Found 所請求的頁面已經臨時轉移至新的url。
303 See Other 所請求的頁面可在別的url下被找到。
304 Not Modified 未按預期修改文檔。客戶端有緩衝的文檔併發出了一個條件性的請求(通常是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。服務器告訴客戶,原來緩衝的文檔還能夠繼續使用。

4xx:信息

狀態碼 描述
400 Bad Request 服務器未能理解請求。
401 Unauthorized 被請求的頁面須要用戶名和密碼。
402 Payment Required 此代碼尚沒法使用。
403 Forbidden 對被請求頁面的訪問被禁止。
404 Not Found 服務器沒法找到被請求的頁面。

5xx:信息

狀態碼 描述
500 Internal Server Error 請求未完成。服務器遇到不可預知的狀況。
相關文章
相關標籤/搜索