get和post請求的區別

問題:get和post請求它們的區別是安全和不安全的,那麼到底哪一個是安全,那個是不安全的,還有這個安全是相對於什麼來講的?瀏覽器

解決:緩存

1、原理區別安全

1.通常咱們在瀏覽器輸入一個網址訪問網站都是GET請求。服務器

HTTP定義與服務器交互方法:get,post,put,delete,head。post

其中GET和HEAD被稱爲安全方法。網站

爲何會被稱爲安全方法?spa

由於get和head的HTTP請求不會產生動做。資源

不會產生動做的體現是什麼?get

get和head的HTTP請求不會在服務器上產生任何結果。博客

那麼安全方法是否是什麼動做都不產生?

這裏的安全方法僅僅指不會修改信息。

2.根據HTTP規範,POST可能會修改服務器上的資源的請求。好比開源中國的博客,用戶提交一篇博文

或者讀者提交評論是經過POST請求來實現的,由於在博文或者評論提交後資源(即某個頁面)不一樣了,或者說資源被修改了,這些即是"不安全方法"。

2、表現形式區別

1.安全性:POST的安全性比GET的高。這裏的安全是真正的安全,上面的安全僅僅是不修改服務器的數據。

舉例:在用戶登陸時,經過GET請求,用戶名和密碼都會暴露在URL上,由於登陸頁面有可能被瀏覽器緩存以及其餘人查看瀏覽器的歷史記錄的緣由,此時的用戶名和密碼就很容易被他人拿到了。

總結:對於服務器來講get請求是安全的,post請求是不安全的。對於用戶來講,get請求是不安全的,post請求是安全的。

相關文章
相關標籤/搜索