生活随笔
收集整理的這篇文章主要介紹了
向服务器端提交数据的两种方式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
樸素版: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?當客戶端點擊提交按鈕以后,瀏覽器就會收集頁面的表單元素的namevalue值,然后以name為key、 value為值的鍵值對的形式發送到服務器端,這些表單元素包括:input系列的標簽、select、textarea等表單元素,而且這些元素也只能發送value的值,對于其他的屬性值也不能夠直接發送,其他標簽的屬性值更是不能夠直接發送到服務器端與服務器端直接交互,它們都需要借助于表單元素(input系列的標簽、select、textarea)與服務器通信,在這里表單元素的action ?method都需要自己手動指定,而豪華版則無需指定,一切自動化,默認為post方式發送;HTTP定義了與服務器交互的不同方法,最基本的方法是?GET?和?POST:?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (1)get是從服務器上獲取數據,post是向服務器傳送數據。
(2) 在客戶端,Get方式在通過URL提交數據,數據在URL中可以看到;POST方式,數據放置在HTML HEADER內提交。
(3) 對于get方式,服務器端用Request.QueryString獲取變量的值,對于post方式,服務器端用Request.Form獲取提交的數據,兩種方式都可以通過Request["keyname"]的方式獲取值。
(4) GET方式提交的數據最多只能有1024字節,而POST則沒有此限制。
(5) 安全性問題。正如在(1)中提到,使用 Get 的時候,參數會顯示在地址欄上,而 Post 不會。所以,如果這些數據是中文數據而且是非敏感數據,那么使用 get;如果用戶輸入的數據不是中文字符而且包含敏感數據,那么還是使用 post為好
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??豪華版: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???所謂豪華版就是使用.net的高度封裝的服務器控件與服務器進行通信,他的使用方法簡單,即使是?<asp:Label等控制顯示的標簽控件與服務器端的交互也同<asp:Textbox一樣容易與后臺通信;那是因為我們在使用.net服務器控件控件的時候,.net在頁面中為我們自動增加了一個input hidden也就是常說的viewstate,就是這個viewstate保存了非表單元素的值然后以表單元素的方式發給服務器,如果我們僅用頁面級別的viewstate,那么表單元素不會受影響,而非表單元素則受影響,其實兩種方式的原理都是一樣的,只是微軟幫我們做了很多的事情,讓我們更加高效的開發程序;
轉載于:https://www.cnblogs.com/LittleFeiHu/archive/2011/01/18/1938346.html
總結
以上是生活随笔為你收集整理的向服务器端提交数据的两种方式的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。