[摘錄]表單中"post"與"get"的區(qū)別


          摘錄地址:http://www.mypm.net/blog/user1/wanghuifen/archives/2007/15900.html

          Get:是以實(shí)體的方式得到由請求URI所指定資源的信息,如果請求URI只是一個數(shù)據(jù)產(chǎn)生過程,那么最終要在響應(yīng)實(shí)體中返回的是處理過程的結(jié)果所指向的資源,而不是處理過程的描述。

          Post:用來向目的服務(wù)器發(fā)出請求,要求它接受被附在請求后的實(shí)體,并把它當(dāng)作請求隊(duì)列中請求URI所指定資源的附加新子項(xiàng),Post被設(shè)計(jì)成用統(tǒng)一的方法實(shí)現(xiàn)下列功能:
          1:對現(xiàn)有資源的解釋
          2:向電子公告欄、新聞組、郵件列表或類似討論組發(fā)信息。
          3:提交數(shù)據(jù)塊
          4:通過附加操作來擴(kuò)展數(shù)據(jù)庫

          從上面描述可以看出,Get是向服務(wù)器發(fā)索取數(shù)據(jù)的一種請求;而Post是向服務(wù)器提交數(shù)據(jù)的一種請求,要提交的數(shù)據(jù)位于信息頭后面的實(shí)體中。很理論化,但是很標(biāo)準(zhǔn),method=“get”并不是從服務(wù)器上獲取數(shù)據(jù),get和post 只是發(fā)送機(jī)制不同,并不是一個取一個發(fā)!get方法會在IE地址欄里顯示表示你提交時候所帶的值;post方法不會
          --------------------------------------------------------------------------------
          1、 get是把參數(shù)數(shù)據(jù)隊(duì)列加到提交表單的ACTION屬性所指的URL中,值和表單內(nèi)各個字段一一對應(yīng),在URL中可以看到。post是通過HTTP post機(jī)制,將表單內(nèi)各個字段與其內(nèi)容放置在HTML HEADER內(nèi)一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。

          2、對于get方式,服務(wù)器端用Request.QueryString獲取變量的值,對于post方式,服務(wù)器端用Request.Form獲取提交的數(shù)據(jù)。兩種方式的參數(shù)都可以用Request來獲得。

          3、get傳送的數(shù)據(jù)量較小,不能大于2KB。post傳送的數(shù)據(jù)量較大,一般被默認(rèn)為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。

          4、get安全性非常低,post安全性較高。

          5、 <form method="get" action="a.asp?b=b">跟<form method="get" action="a.asp">是一樣的,也就是說,action頁面后邊帶的參數(shù)列表會被忽視;而<form method="post" action="a.asp?b=b">跟<form method="post" action="a.asp">是不一樣的。

          另外,Get請求有如下特性:它會將數(shù)據(jù)添加到URL中,通過這種方式傳遞到服務(wù)器,通常利用一個問號?代表URL地址的結(jié)尾與數(shù)據(jù)參數(shù)的開端,后面的參數(shù)每一個數(shù)據(jù)參數(shù)以“名稱=值”的形式出現(xiàn),參數(shù)與參數(shù)之間利用一個連接符&來區(qū)分。
          Post請求有如下特性:數(shù)據(jù)是放在HTTP主體中的,其組織方式不只一種,有&連接方式,也有分割符方式,可隱藏參數(shù),傳遞大批數(shù)據(jù),比較方便。


          --------------------------------------------------------------------------------

          post 地址欄不會出現(xiàn)一大串?bjnghfgreygt這樣的東西
          如果是get,就會出現(xiàn)了
          1、Get 方法通過 URL 請求來傳遞用戶的數(shù)據(jù),將表單內(nèi)各字段名稱與其內(nèi)容,以成對的字符串連接,置于 action 屬性所指程序的 url 后,如http://www.mdm.com/test.asp?name=asd&password=sad,數(shù)據(jù)都會直接顯示在 url 上,就像用戶點(diǎn)擊一個鏈接一樣;Post 方法通過 HTTP post 機(jī)制,將表單內(nèi)各字段名稱與其內(nèi)容放置在 HTML 表頭(header)內(nèi)一起傳送給服務(wù)器端交由 action 屬性能所指的程序處理,該程序會通過標(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ù),會帶來安全問題,比如一個登陸頁面,通過 Get 方式提交數(shù)據(jù)時,用戶名和密碼將出現(xiàn)在 URL 上,如果頁面可以被緩存或者其他人可以訪問客戶這臺機(jī)器,就可以從歷史記錄獲得該用戶的帳號和密碼,所以表單提交建議使用 Post 方法;Post 方法提交的表單頁面常見的問題是,該頁面如果刷新的時候,會彈出一個對話框

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

          歡迎大家訪問我的個人網(wǎng)站 萌萌的IT人

          posted on 2007-07-26 17:17 見酒就暈 閱讀(472) 評論(4)  編輯  收藏 所屬分類: J2EE文章

          評論

          # re: [摘錄]表單中"post"與"get"的區(qū)別 2008-02-04 17:41 df

          dfgdfgs  回復(fù)  更多評論   

          # re: [摘錄]表單中"post"與"get"的區(qū)別 2008-02-04 17:41 df

          fhgfdg  回復(fù)  更多評論   

          # re: [摘錄]表單中"post"與"get"的區(qū)別[未登錄] 2008-02-04 17:42 dj

          dgds  回復(fù)  更多評論   

          # re: [摘錄]表單中"post"與"get"的區(qū)別 2009-04-30 14:35 李強(qiáng)

          get是將請求數(shù)據(jù)作為url地址的一部分,即不同的數(shù)據(jù)請求所對應(yīng)的地址被客戶端視不同的地址
          而post請求的數(shù)據(jù)只是被認(rèn)為是向請求資源發(fā)送的傳遞參數(shù),不會被瀏覽器認(rèn)為是不同url請求  回復(fù)  更多評論   

          <2009年4月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(3)

          我參與的團(tuán)隊(duì)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          BLOG

          FRIENDS

          LIFE

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 永州市| 金华市| 衢州市| 海口市| 蒙自县| 龙江县| 宜黄县| 清新县| 巴马| 仙桃市| 耒阳市| 射洪县| 中江县| 孝昌县| 莱阳市| 夏邑县| 鄂伦春自治旗| 法库县| 四川省| 湘潭市| 平湖市| 察哈| 汕头市| 鄂托克旗| 英吉沙县| 天峨县| 绍兴县| 巧家县| 建湖县| 都江堰市| 惠安县| 彭山县| 鸡泽县| 巢湖市| 开远市| 湾仔区| 淳安县| 平南县| 苗栗县| 霸州市| 乌拉特前旗|