Post 和 Get 是 HTTP 請求的兩種方法,其區(qū)別如下:應(yīng)用場景: GET 請求是一個冪等的請求,一般 Get 請求用于對服務(wù)器資源不會產(chǎn)生影響的場景,比如說請求一個網(wǎng)頁的資源。而 Post 不是一個冪等的請求,一般用于對服務(wù)器資源會產(chǎn)生影響的情景,比如注冊用戶這一類的操作。
是否緩存: 因為兩者應(yīng)用場景不同,瀏覽器一般會對 Get 請求緩存,但很少對 Post 請求緩存。
發(fā)送的報文格式: Get 請求的報文中實體部分為空,Post 請求的報文中實體部分一般為向服務(wù)器發(fā)送的數(shù)據(jù)。
安全性: Get 請求可以將請求的參數(shù)放入 url 中向服務(wù)器發(fā)送,這樣的做法相對于 Post 請求來說是不太安全的,因為請求的 url 會被保留在歷史記錄中。
請求長度: 瀏覽器由于對 url 長度的限制,所以會影響 get 請求發(fā)送數(shù)據(jù)時的長度。這個限制是瀏覽器規(guī)定的,并不是 RFC 規(guī)定的。
參數(shù)類型: post 的參數(shù)傳遞支持更多的數(shù)據(jù)類型。