![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 Liny ![]()
![]() ![]() |
爬文心得: 有爬過一些文;所以爬文過後有一些認知,例如: 1.Request.QueryString:get方法,主要是來自網址列的資訊,Ex:http://localhost:XXXX/WebApp/xxx.aspx?id=+""所以如果要獲得資訊,必須透過Request.QueryString["XX"]來得到;也就是傳值到網址列後,自他頁使用Request.QueryString來取參數值 優點:泛用性高,取值容易。缺點:不適合傳遞具有安全性的資料 2.post:使用Request.Form["XX"]取值,可透過$.post的jquery或是Ajax來傳值(已知方式) 優點:安全性較高,資料量較無限制。 缺點:爬文時似乎沒看到具體缺點。 3.Request["XX"]:包含自1和2兩種方式,取得參數值,優先Request.QueryString,有同名參數值時,可能會得到錯誤的參數值(不太確定) 4.Request.params["XX"]:所有post和get傳過來的值的集合,依次包括 request.QueryString、request.Form、request.cookies和request.ServerVariable。 5.page.request:待查文;似乎等於Request["XX"]。 發問動機 透過專案練習時,所產生的一些疑問;想釐清我的一些觀念,前提:在有MasterPage的情況下 Request、Request.params、Request.Form、Page.Request這四類的使用時機和狀況。 發問目的: 以練習題當初的狀況,是因為練習中不希望有任何參數值顯示在網址列中;所以使用Session方式來做傳值,透過小羊窒息大知道Cookies傳值,爬文則得知還有Application、PreviousePage、Server.Transfer等方式 但爬文後也知道,Session傳值,也可用於接值,似乎用不到Request方式,所以接傳值都一併使用Session,又使用Session會造成IIS負擔,練習中也使用hiddenfield去存取Session的值然後清掉Session。 但也產生此次的疑問: 若以個人練習code而言,Request能使用嗎?如果能可以使用我的Code做Request、Request.params、Request.Form、Page.Request大致舉例可使用的時機和狀況嗎?(有Code說明更好) 截錄個人練習部份相關Code: 傳值.aspx 傳值.aspx.cs 接值.aspx 接值.aspx.cs
== 簽名檔 ==
學無止境! |
1樓 |
主要是因為webform讓大家混淆了前後端各自需要處理或傳送的事項
這也是為什麼微軟會有一套MVC Framework(其實這只是一小項) (當然程式的架構撰寫及分層是依照駕駛者技術 MVC也可以寫成不MVC,Webform也可以分得清清楚楚) 因為議題太廣 我直接推薦你學習MVC Framework並從專案中慢慢去了解前後端的事項... 供參考
本篇文章回覆於2017-11-08 11:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
Liny ![]() ![]() |
#1 感謝Alan版的推薦,但我目前碰不到MVC,應該說接不到相關訓練...
有想著要學,但應該不是現在,目前光是網頁、Data、WebService這樣的三層就花了很多時間,也是我目前主要練習作業的內容! 但還是謝謝您的建議
本篇文章回覆於2017-11-09 17:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓
作者回應
Liny ![]() ![]() |
(6) 若提問者想刪除提問並收回預設的QP點數,也可以在討論串上向版主發出請求,前提是所有的回答都沒有可接受的,但此請求是否通過,需視版主的裁定,若版主不同意,則版主有權直接分配點數及結案。 覺得自己問的方式不對和內容太廣泛,想申請刪除此次提問!
本篇文章回覆於2017-11-27 15:07
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓 |
Hi Liny,
這議題真的滿廣 可能要寫好幾篇或做一堆範例來解釋 不如給您個方向,自己實作最快 從MSND Request 我們能得知 它可以幫我們:存取資料來源 QueryString, ,Form, ,Cookies, ,或 ServerVariables 集合 這裡QueryString 則解釋了QueryString有沒有的差別 我們可以知道下了QueryString 它只會查詢網址後方的字串 沒有就整個Http集合掃一遍,這樣講你會知道效率的差別 這裡Request Params 則解釋了 查詢字串參數。 表單欄位。 Cookie。 伺服器變數。 好像跟單純Request一樣? 但您如果實作會發現,當我索引值在頁面上有多個的時候,它會同時列出。 譬如有個控制項id="Info",而我的QueryString也是Info時,會一併查找出來 這裡Request Form 則單純解釋「讀取從瀏覽器張貼的表單集合中的值」 那我貼了一堆連結 打了一些不太理解的說論 該怎麼實作了? 首先你開個Test.aspx,再後方加個Trace="true" 像這樣 拉一堆Label,button,在Page_load時做以下簡單的示範: 你就會發現下QueryString、Page_load 、按下Button submit時的trace 最重要的是trace 內的 1.cookie集合(我上面沒寫 你可以試試) 2.表單集合 3.QueryString集合 4.伺服器變數 實際做過後,並多做些變化,相信你能更了解
本篇文章回覆於2017-11-29 12:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓
作者回應
Liny ![]() ![]() |
感謝小菜渣回應....
實作後是發現回應程式page Load成功後的時間有所差異, 您是要我理解這個嗎?
本篇文章回覆於2017-12-11 09:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓 |
Request 當然可以用,用對地方的話,其實是很棒的。
但 Request 傳的東西,不要是敏感資料,如帳號密碼等東西,但可以傳資料庫關聯的主鍵資料。 以下程式碼是 ASP.NET Web From 專屬的優勢,分享我的個人經驗↓
本篇文章回覆於2017-12-16 23:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |