A. web中表單發送數據有哪些方法各有什麼優缺點
常用的就GET和POST是HTTP請求的兩種基本方法
GET在瀏覽器回退時是無害的,而POST會再次提交請求。
GET產生的URL地址可以被Bookmark,而POST不可以。
GET請求只能進行url編碼,而POST支持多種編碼方式。
GET請求會被瀏覽器主動cache,而POST不會,除非手動設置。
GET請求在URL中傳送的參數是有長度限制的,而POST沒有。
對參數的數據類型,GET只接受ASCII字元,而POST沒有限制。
GET請求參數會被完整保留在瀏覽器歷史記錄里,而POST中的參數不會被保留。
GET比POST更不安全,因為參數直接暴露在URL上,所以不能用來傳遞敏感信息。
GET參數通過URL傳遞,POST放在Request body中。
B. 一個簡單的Web登錄程序 GET和POST的區別
1. get是從伺服器上獲取數據,post是向伺服器傳送數據。
2. get是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個欄位一一對應,在URL中可以看到。post是通過HTTP post機制,將表單內各個欄位與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。
3. 對於get方式,伺服器端用Request.QueryString獲取變數的值,對於post方式,伺服器端用Request.Form獲取提交的數據。
4. get傳送的數據量較小,不能大於2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。
5. get安全性非常低,post安全性較高。但是執行效率卻比Post方法好。
建議:
1、get方式的安全性較Post方式要差些,包含機密信息的話,建議用Post數據提交方式;
2、在做數據查詢時,建議用Get方式;而在做數據添加、修改或刪除時,建議用Post方式;
C. 上網(web方式get)是什麼意思
HTTP:定義了與伺服器交互的不同方法,最基本的方法是 GET 和 POST.
HTTP-GET和HTTP-POST是使用HTTP的協議標准動詞,用於編碼和傳送變數名/變數值對參數,並且使用相關的請求語義。每一個HTTP-GET和HTTP-POST都由HTTP請求頭組成,這些請求頭定義了客戶端從伺服器請求了什麼。
與HTTP-GET類似,HTTP-POST參數也是被URL編碼的。然而,變數名/變數值不作為URL的一部分被傳送,而是放在實際的HTTP請求消息內部被傳送。
(1)get 是從伺服器上獲取數據,post是向伺服器傳送數據。 在客戶端,get方式在通過url提交數據,數據在url中可以看到;post方式,數據放置在html header內提交。
(2)使用get 的時候,參數會顯示在地址欄上,而post不會。
(3) get 方式提交的數據最多隻能有1024位元組,而post則沒有此限制。
(4) 安全性 :如果用get提交一個驗證用戶名和密碼的form ,一般認為是不安全的。因為用戶名和密碼將出現在url上,進而出現在瀏覽器的歷史記錄中。顯然,在對安全性有要求的情況下,應該用post
D. 上網(web方式get)是什麼意思
在瀏覽器中輸入網址訪問資源都是通過GET方式;在FORM提交中,可以通過Method指定提交方式為GET或者POST,默認為GET提交。
HTTP 定義了與伺服器交互的不同方法,最常用的有4種,Put(增),Delete(刪),Post(改),Get(查),即增刪改查:
1)Get, 它用於獲取信息,注意,他只是獲取、查詢數據,也就是說它不會修改伺服器上的數據,從這點來講,它是數據安全的,而稍後會提到的Post它是可以修改數據的,所以這也是兩者差別之一了。
2) Post,它是可以向伺服器發送修改請求,從而修改伺服器的,比方說,我們要在論壇上回貼、在博客上評論,這就要用到Post了,當然它也是可以僅僅獲取數據的。
3)Delete 刪除數據。可以通過Get/Post來實現。
4)Put,增加、放置數據,可以通過Get/Post來實現。
根據HTTP規范,GET用於信息獲取,而且應該是安全的和冪等的 。
1.所謂安全的意味著該操作用於獲取信息而非修改信息。換句話說,GET請求一般不應產生副作用。就是說,僅僅是獲取資源信息,就像資料庫查詢一樣,不會修改,增加數據,不會影響資源的狀態。(注意:這里安全的含義僅僅是指是非修改信息。)
根據HTTP規范,POST表示可能修改變伺服器上的資源的請求 。繼續引用上面的例子:還是新聞以網站為例,讀者對新聞發表自己的評論應該通過POST實現,因為在評論提交後站點的資源已經不同了,或者說資源被修改了。
表現形式區別:
HTTP請求:在HTTP請求中,第一行必須是一個請求行(request line),用來說明請求類型、要訪問的資源以及使用的HTTP版本。緊接著是一個首部(header)小節,用來說明伺服器要使用的附加信息。在首部之後是一個空行,再此之後可以添加任意的其他數據[稱之為主體(body)]。
兩種提交方式的區別:
(1)GET提交,請求的數據會附在URL之後(就是把數據放置在HTTP協議頭中),以?分割URL和傳輸數據,多個參數用&連接。如果數據是英文字母/數字,原樣發送,如果是空格,轉換為+,如果是中文/其他字元,則直接把字元串用BASE64加密,得出如: %E4%BD%A0%E5%A5%BD,其中%XX中的XX為該符號以16進製表示的ASCII。
POST提交:把提交的數據放置在是HTTP包的包體中。上文示例中紅色字體標明的就是實際的傳輸數據
因此,GET提交的數據會在地址欄中顯示出來,而POST提交,地址欄不會改變
(2)傳輸數據的大小:首先聲明:HTTP協議沒有對傳輸的數據大小進行限制,HTTP協議規范也沒有對URL長度進行限制。
而在實際開發中存在的限制主要有:
GET:特定瀏覽器和伺服器對URL長度有限制,例如IE對URL長度的限制是2083位元組(2K+35)。對於其他瀏覽器,如Netscape、FireFox等,理論上沒有長度限制,其限製取決於操作系統的支持。
因此對於GET提交時,傳輸數據就會受到URL長度的限制。
POST:由於不是通過URL傳值,理論上數據不受限。但實際各個WEB伺服器會規定對post提交數據大小進行限制,Apache、IIS6都有各自的配置
E. web請求除了get和post還有哪些方式
OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE
方法GET和HEAD應該被所有的通用WEB伺服器支持,其他所有方法的實現是可選的。GET方法取回由Request-URI標識的信息。HEAD方法也是取回由Request-URI標識的信息,只是可以在響應時,不返回消息體。POST方法可以請求伺服器接收包含在請求中的實體信息,可以用於提交表單,向新聞組、BBS、郵件群組和資料庫發送消息。
F. 關於java web中get請求方式
打錯了。。是form表單不是from表單