python—HTTP請求的Get和Post方法

HTTP有兩部分組成:請求與響應

HTTP請求格式:

在HTTP請求中,第一行必須是一個請求行(request line),用來說明請求類型、要訪問的資源以及使用的HTTP版本。緊接着是一個首部(header)小節,用來說明服務器要使用的附加信息。在首部之後是一個空行,再此之後可以添加任意的其他數據[稱之爲主體(body)

我們再來說說Get和Post

GET是從服務器上獲取數據,POST是向服務器傳送數據

兩者的區別:

最直觀的區別就是GET把參數包含在URL中,POST通過request body傳遞參數

GET的語義是請求獲取指定的資源;POST的語義是根據請求負荷(報文主體)對指定的資源做出處理,具體的處理方式視資源類型而不同,比如提交表單。

GET方法是安全、冪等、可緩存的(除非有 Cache-ControlHeader的約束);POST不安全,不冪等,(大部分實現)不可緩存。

GET方法的報文主體沒有任何語義;POST的報文大部分都具有特定語義。

GET請求參數顯示,都顯示在瀏覽器網址上,HTTP服務器根據該請求所包含URL中的
參數來產生響應內容,即“Get”請求的參數是URL的一部分。例如: http://www.baidu.com/s?wd=Chinese

POST請求參數在請求體當中,消息長度沒有限制而且以隱式的方式進行發送,通常用 來向HTTP服務器提交量比較大的數據(比如請求中包含許多參數或者文件上傳操作等), 請求的參數包含在“Content-Type”消息頭裏,指明該消息體的媒體類型和編碼,

注意:
避免使用Get方式提交表單,因爲有可能會導致安全問題。比如說在登陸表單中用Get方式,用戶輸入的用戶名和密碼將在地址欄中暴露無遺。

發佈了37 篇原創文章 · 獲贊 49 · 訪問量 4069
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章