濮阳杆衣贸易有限公司

主頁 > 知識庫 > Form表單中method=post/get兩種數(shù)據(jù)傳輸?shù)姆绞降膮^(qū)別

Form表單中method=post/get兩種數(shù)據(jù)傳輸?shù)姆绞降膮^(qū)別

熱門標(biāo)簽:AI外呼系統(tǒng) 價(jià)格 錦州企業(yè)外呼系統(tǒng) 最簡單的百度地圖標(biāo)注店鋪 營口400電話申請 青海保險(xiǎn)智能外呼系統(tǒng)商家 梧州地圖標(biāo)注app 禹州電話外呼系統(tǒng) 新鄉(xiāng)機(jī)器人外呼系統(tǒng) 水經(jīng)注萬能地圖標(biāo)注
Form提供了兩種數(shù)據(jù)傳輸?shù)姆绞?mdash;—get和post。雖然它們都是數(shù)據(jù)的提交方式,但是在實(shí)際傳輸時(shí)確有很大的不同,并且可能會(huì)對數(shù)據(jù)產(chǎn)生嚴(yán)重的影響。雖然為了方便的得到變量值,Web容器已經(jīng)屏蔽了二者的一些差異,但是了解二者的差異在以后的編程也會(huì)很有幫助的。

Form中的get和post方法,在數(shù)據(jù)傳輸過程中分別對應(yīng)了HTTP協(xié)議中的GET和POST方法。二者主要區(qū)別如下:

1、Get是用來從服務(wù)器上獲得數(shù)據(jù),而Post是用來向服務(wù)器上傳遞數(shù)據(jù)。

2、Get將表單中數(shù)據(jù)的按照variable=value的形式,添加到action所指向的URL后面,并且兩者使用“?”連接,而各個(gè)變量之間使用“&”連接;Post是將表單中的數(shù)據(jù)放在form的數(shù)據(jù)體中,按照變量和值相對應(yīng)的方式,傳遞到action所指向URL。

3、Get是不安全的,因?yàn)樵趥鬏斶^程,數(shù)據(jù)被放在請求的URL中,而如今現(xiàn)有的很多服務(wù)器、代理服務(wù)器或者用戶代理都會(huì)將請求URL記錄到日志文件中,然后放在某個(gè)地方,這樣就可能會(huì)有一些隱私的信息被第三方看到。另外,用戶也可以在瀏覽器上直接看到提交的數(shù)據(jù),一些系統(tǒng)內(nèi)部消息將會(huì)一同顯示在用戶面前。Post的所有操作對用戶來說都是不可見的。

4、Get傳輸?shù)臄?shù)據(jù)量小,這主要是因?yàn)槭躑RL長度限制;而Post可以傳輸大量的數(shù)據(jù),所以在上傳文件只能使用Post(當(dāng)然還有一個(gè)原因,將在后面的提到)。

5、Get限制Form表單的數(shù)據(jù)集的值必須為ASCII字符;而Post支持整個(gè)ISO10646字符集。

6、Get是Form的默認(rèn)方法。

使用Post傳輸?shù)臄?shù)據(jù),可以通過設(shè)置編碼的方式正確轉(zhuǎn)化中文;而Get傳輸?shù)臄?shù)據(jù)卻沒有變化。在以后的程序中,我們一定要注意這一點(diǎn)。

_________________________________________________________________________________________________

1、Get 方法通過 URL 請求來傳遞用戶的數(shù)據(jù),將表單內(nèi)各字段名稱與其內(nèi)容,以成對的字符串連接,置于 action 屬性所指程序的 url 后,如http://www.mdm.com/test.asp?name=asd&password=sad,數(shù)據(jù)都會(huì)直接顯示在 url 上,就像用戶點(diǎn)擊一個(gè)鏈接一樣;Post 方法通過 HTTP post 機(jī)制,將表單內(nèi)各字段名稱與其內(nèi)容放置在 HTML 表頭(header)內(nèi)一起傳送給服務(wù)器端交由 action 屬性能所指的程序處理,該程序會(huì)通過標(biāo)準(zhǔn)輸入(stdin)方式,將表單的數(shù)據(jù)讀出并加以處理

2、 Get 方式需要使用 Request.QueryString 來取得變量的值;而 Post 方式通過 Request.Form 來訪問提交的內(nèi)容

3、Get 方式傳輸?shù)臄?shù)據(jù)量非常小,一般限制在 2 KB 左右,但是執(zhí)行效率卻比 Post 方法好;而 Post 方式傳遞的數(shù)據(jù)量相對較大,它是等待服務(wù)器來讀取數(shù)據(jù),不過也有字節(jié)限制,這是為了避免對服務(wù)器用大量數(shù)據(jù)進(jìn)行惡意攻擊,根據(jù)微軟方面的說法,微軟對用 Request.Form() 可接收的最大數(shù)據(jù)有限制,IIS 4 中為 80 KB 字節(jié),IIS 5 中為 100 KB 字節(jié)

建議:除非你肯定你提交的數(shù)據(jù)可以一次性提交,否則請盡量用 Post 方法

4、Get 方式提交數(shù)據(jù),會(huì)帶來安全問題,比如一個(gè)登陸頁面,通過 Get 方式提交數(shù)據(jù)時(shí),用戶名和密碼將出現(xiàn)在 URL 上,如果頁面可以被緩存或者其他人可以訪問客戶這臺機(jī)器,就可以從歷史記錄獲得該用戶的帳號和密碼,所以表單提交建議使用 Post 方法;Post 方法提交的表單頁面常見的問題是,該頁面如果刷新的時(shí)候,會(huì)彈出一個(gè)對話框

建議:出于安全性考慮,建議最好使用 Post 提交數(shù)據(jù)

標(biāo)簽:荊門 懷化 山南 昭通 潮州 青島 延邊 哈密

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Form表單中method=post/get兩種數(shù)據(jù)傳輸?shù)姆绞降膮^(qū)別》,本文關(guān)鍵詞  Form,表單,中,method,post,get,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Form表單中method=post/get兩種數(shù)據(jù)傳輸?shù)姆绞降膮^(qū)別》相關(guān)的同類信息!
  • 本頁收集關(guān)于Form表單中method=post/get兩種數(shù)據(jù)傳輸?shù)姆绞降膮^(qū)別的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    东乌珠穆沁旗| 徐水县| 龙泉市| 恩平市| 曲水县| 桐庐县| 什邡市| 太仓市| 油尖旺区| 永济市| 马鞍山市| 长白| 长武县| 务川| 宜城市| 望城县| 彭山县| 林州市| 武隆县| 靖远县| 阜阳市| 美姑县| 连山| 巴东县| 博湖县| 抚远县| 浦县| 富宁县| 日照市| 上栗县| 津南区| 德保县| 资源县| 安西县| 巴里| 石台县| 昆明市| 双鸭山市| 桂阳县| 和龙市| 黑山县|