面試之 get 和 post 區別

約翰發表於2020-12-15

get 和 post 的區別可以從兩個角度來看
1)前端請求
get 一般理解為是:讀取內容
post 是表單form裡提交的內容

2)介面層面
get 和post都是基於http協議的,底層依賴tcp/ip協議,從get和post來看,沒有區別,但是大家在使用具體場景下是有區別,一般目前介面都是基於REST介面,其有自己的規範和風格
a.get 請求一般傳輸的資料在url中,post在body中;
b.get 請求相對來說不安全,post相對安全,實際上兩者傳輸都不安全,如果想讓更安全,可以使用https協議或是其他加密方式
c.get 能傳送的資料量少,post資料在body中傳輸資料量大;
d.get url 地址中編碼格式ascii碼格式,post是支援任何編碼格式;
e.get 傳送一次請求,post傳送兩次請求:第一次傳送headers響應100後,再傳送第二次請求data,響應200
對於網路來說,一次請求和兩次請求來說,一般不會有感覺的;

相關文章