一、Post 和 Get 請求的區(qū)別
最直觀的區(qū)別就是
Get
請求把參數(shù)包含在url
中,但是Post
通過request body
傳遞參數(shù)
1、應用場景
Get
請求是一個冪等的請求,一般Get
請求用于對服務器資源不會產(chǎn)生影響的場景(如請求一個網(wǎng)頁的資源);Post
不是一個冪等的請求,一般用于對服務器資源會產(chǎn)生影響的場景(如注冊用戶)
冪等的請求:指的是同樣的請求被執(zhí)行一次和連續(xù)執(zhí)行多次的效果是一樣的,服務器的狀態(tài)也是一樣的。即如果一個
Http
請求在使用相同的數(shù)據(jù)對服務器進行相同的請求時。不會對服務器的運行狀態(tài)造成任何的負擔和阻塞
2、緩存
因為兩個請求的應用場景不同,所以瀏覽器一般會對Get
請求緩存,很少對Post
請求緩存
3、發(fā)送報文實體部分
Get
請求的報文中實體部分為空,Post
請求的報文中實體部分一般為向服務器發(fā)送的數(shù)據(jù)
4、安全性
Get
請求可以將請求的參數(shù)放到url
中向服務器發(fā)送,但是相對于Post
請求是不太安全的,因為請求的url
會被保留在歷史記錄中
5、發(fā)送數(shù)據(jù)長度
瀏覽器由于對url
長度的限制,所以會影響get
請求發(fā)送數(shù)據(jù)時的長度,這個限制是瀏覽器規(guī)定的,不是RFC
規(guī)定的,因此Post
發(fā)送的數(shù)據(jù)更大
RFC
:Request For Comments(RFC),是一系列以編號排定的文件。文件收集了有關互聯(lián)網(wǎng)相關信息,以及UNIX和互聯(lián)網(wǎng)社區(qū)的軟件文件。
6、參數(shù)類型
Post
的參數(shù)傳遞支持更多的數(shù)據(jù)類型,Get
只能發(fā)送ASCII
字符
二、Post和Put請求的區(qū)別
-
Put
請求是向服務器端發(fā)送數(shù)據(jù),從而修改數(shù)據(jù)的內(nèi)容,但是不會增加數(shù)據(jù)的種類等,也就是說不管進行多少次操作,它的結果并沒有不同,可以看做是更新數(shù)據(jù)文章來源:http://www.zghlxwxcb.cn/news/detail-432949.html -
Post
請求時在向服務器發(fā)送數(shù)據(jù)后,請求會改變數(shù)據(jù)的種類等資源,會創(chuàng)建新的內(nèi)容文章來源地址http://www.zghlxwxcb.cn/news/detail-432949.html
到了這里,關于Post和Get,Post和Put請求的區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!