get和post的區別

2021-10-22 15:47:06 字數 813 閱讀 7522

post和get是http協議中最常用的兩種傳參方式,這裡小小總結一下兩者的區別

get請求,請求的資料會附加在url之後,以?分割url和傳輸資料,多個引數用&連線。url的編碼格式採用的是ascii編碼,而不是uniclde,即是說所有的非ascii字元都要編碼之後再傳輸

post請求:post請求會把請求的資料放置在http請求包的包體中。上面的item=band就是實際的傳輸資料。因此,get請求的資料會暴露在位址列中,而post請求則不會

傳輸資料的大小

在http規範中,沒有對url的長度和傳輸的資料大小進行限制。但是在實際開發過程中,對於get,特定的瀏覽器和伺服器對url的長度有限制。因此,在使用get請求時,傳輸資料會受到url長度的限制。

對於post,由於不是url傳值,理論上是不會受限制的,但是實際上各個伺服器會規定對post提交資料大小進行限制,apache、iis都有各自的配置

安全性post的安全性比get的高。這裡的安全是指真正的安全,而不同於上面get提到的安全方法中的安全,上面提到的安全僅僅是不修改伺服器的資料。比如,在進行登入操作,通過get請求,使用者名稱和密碼都會暴露再url上,因為登入頁面有可能被瀏覽器快取以及其他人檢視瀏覽器的歷史記錄的原因,此時的使用者名稱和密碼就很容易被他人拿到了。除此之外,get請求提交的資料還可能會造成cross-site request frogery攻擊

get一般適用於從伺服器端獲取資料,不做增刪改,而post適用於向伺服器提交資料,如做增刪改操作

get和post的區別

在b s應用程式中,前台與後台的資料互動,都是通過html中form表單完成的。form提供了兩種資料傳輸的方式 get和post。雖然它們都是資料的提交方式,但是在實際傳輸時確有很大的不同,並且可能會對資料產生嚴重的影響。雖然為了方便的得到變數值,web容器已經遮蔽了二者的一些差異,但是了解二者的...

post和get的區別?

1.get是從伺服器上獲取資料,post是向伺服器傳送資料。get 和 post只是一種傳遞資料的方式,get也可以把資料傳到伺服器,他們的本質都是傳送請求和接收結果。只是組織格式和資料量上面有差別,http協議裡面有介紹。2.get是把引數資料佇列加到提交表單的action屬性所指的url中,值和...

post和get的區別

兩者的主要區別在資料傳送方式和接收方式上 1 在客戶端 get方式是通過url提交資料 post方式是提交後位址列是不變的 2 在伺服器端 get方式是利用解析位址列字串的方式,伺服器獲取get提交的值 post方式是以form的形式提交表單引數 一般來說,盡量避免使用get方式提交表單,因為有可能...