網頁表單中method="post/get"的區別?

1、Get和Post都是用來向服務器上傳遞數據。
2、Get將表單中數據的按照variable=value的形式,添加到action所指向的URL後面,並且兩者使用“?”連接,而各個變量之間使用 “&”連接;Post是將表單中的數據放在form的數據體中,按照變量和值相對應的方式,傳遞到action所指向URL。
3、Get是不安全的,因爲在傳輸過程,數據被放在請求的URL中,而如今現有的很多服務器、代理服務器或者用戶代理都會將請求URL記錄到日誌文件中, 然後放在某個地方,這樣就可能會有一些隱私的信息被第三方看到。另外,用戶也可以在瀏覽器上直接看到提交的數據,一些系統內部消息將會一同顯示在用戶面 前。Post的所有操作對用戶來說都是不可見的。
4、Get傳輸的數據量小,這主要是因爲受URL長度限制,url最長爲2k字節;而Post可以傳輸大量的數據,所以在上傳文件只能使用Post。
5、Get限制Form表單的數據集的值必須爲ASCII字符;而Post支持整個ISO10646字符集。
6、Get是Form的默認方法。

例子分析:

如上所屬時,method="post",則點擊提交之後,url的內容如:html2.html?dddd=cccc,表單內部所有的name/value對都不顯式在url中,url中原先亂寫的dddd=cccc還是保留在那裏。

如果修改一個method,如下所示:

則點擊提交後,url的內容如:html2.html?txtName=zhuxujieName,即表單內的name/value對都顯示在url中,而原先在url中亂寫的dddd=cccc已經不存在了。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章