post 相比get 有很多優(yōu)點(diǎn),為什么現(xiàn)在的HTTP通信中大多數(shù)請(qǐng)求還是使用get?

事實(shí)上GET 和 POST 在實(shí)踐上面有非常大的區(qū)別,這兩種方法在語(yǔ)義上面并非能互相取代。
http協(xié)議規(guī)定GET是獲取資源的方法,POST是創(chuàng)建資源的方法。
POST 是否比 GET 安全是的, POST要比GET安全一點(diǎn)點(diǎn),注意,是一點(diǎn)點(diǎn)。。。
說(shuō)這兩者都是明文傳送當(dāng)然是沒(méi)有錯(cuò)的了,但是這里有一個(gè)細(xì)節(jié),就是GET的URL會(huì)被放在瀏覽器歷史和WEB 服務(wù)器日志里面。POST 發(fā)完基本就木有了。。所以 如果你把關(guān)鍵數(shù)據(jù)放在GET里面,被人偷窺了瀏覽器,或者WEB服務(wù)器被入侵日志被人倒去了,基本泄露可能性100%。
而POST來(lái)說(shuō),日志沒(méi)有記錄,只要數(shù)據(jù)庫(kù)服務(wù)器不被入侵,基本還是安全的。當(dāng)然如果被抓了包,這一切都沒(méi)有什么卵用,所以,HTTPS該用還是得用。

    GET 相對(duì) POST 的優(yōu)勢(shì)是什么最大的優(yōu)勢(shì)是, GET 的URL可以人肉手輸啊。。。你在地址欄打個(gè)POST給我看看。
    本質(zhì)上面, GET 的所有信息都在URL, 所以很方便的記錄下來(lái)重復(fù)使用。所以如果你希望

- 請(qǐng)求中的URL可以被手動(dòng)輸入
- 請(qǐng)求中的URL可以被存在書簽里,或者歷史里,或者快速撥號(hào)里面,或者分享給別人。
- 請(qǐng)求中的URL是可以被搜索引擎收錄的。
- 帶云壓縮的瀏覽器,比如Opera mini/Turbo 2, 只有GET才能在服務(wù)器端被預(yù)取的。- 請(qǐng)求中的URL可以被緩存。
請(qǐng)使用GET. 大家有沒(méi)有注意到,其實(shí)這里面很多方面的要求是和網(wǎng)站的運(yùn)營(yíng)相關(guān)的,而不是技術(shù)相關(guān)的。任何的技術(shù)行為中,其實(shí)多多少少都能看到商業(yè)的影子。反之,就用POST. 特別是有一些東西你是不想讓人家可以在瀏覽器地址欄里面可以輸入的。比如,如果你設(shè)計(jì)一個(gè)blog系統(tǒng), 設(shè)計(jì)這樣一個(gè)URL來(lái)刪掉所有帖子。http://myblog.com/?action=delete_all
我只能說(shuō)很快你就知道什么叫不作死就不會(huì)死這個(gè)道理了,搜索引擎的爬蟲分分鐘教你做人。另外一個(gè)準(zhǔn)則是,可以重復(fù)的交互,比如取個(gè)數(shù)據(jù),跳個(gè)頁(yè)面, 用GET.不可以重復(fù)的操作, 比如創(chuàng)建一個(gè)條目/修改一條記錄, 用POST, 因?yàn)镻OST不能被緩存,所以瀏覽器不會(huì)多次提交。

    如果站在傳輸協(xié)議的角度來(lái)看 POST 完全可以代替 GET,會(huì)覺(jué)得 GET的存在沒(méi)有必要。如果站在應(yīng)用協(xié)議的角度,任何應(yīng)用程序都少不了“增刪改查”功能,HTTP 協(xié)議的方法除了 POST、GET外還有 DELETE和PUT,他們剛好是對(duì)應(yīng)的:POST是添加,DELETE是刪除,PUT是修改,GET是查詢,至于增刪改查的具體內(nèi)容每個(gè)應(yīng)用都不同,但是他們都可以用URL定位,內(nèi)容在HTTP里叫做“資源”,所以URL叫“統(tǒng)一資源定位符”。RESTful API 正是按照這種方式來(lái)定義的,大家都用 HTTP 協(xié)議提供 API 不是偶然,而是就是為此而設(shè)計(jì)的。

參考:https://www.zhihu.com/question/31640769?rf=37401322

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容