Request獲取url各種信息的方法
測試的url地址:x 結果如下
RequestApplicationPath: /testweb
RequestCurrentExecutionFilePath: /testweb/defaultaspx
RequestFilePath: /testweb/defaultaspx
RequestPath: /testweb/defaultaspx
RequestPathInfo:
RequestPhysicalApplicationPath: E:\WWW\testweb\
RequestPhysicalPath: E:\WWW\testweb\defaultaspx
RequestRawUrl: /testweb/defaultaspx
RequestUrlAbsolutePath: /testweb/defaultaspx
RequestUrlAbsoluteUri: x
RequestUrlHost:
RequestUrlLocalPath: /testweb/defaultaspx
RequestUrlReferrer的使用
RequestUrlReferrer可以獲取客戶端上次請求的url的有關信息這樣我們就可以通過這個屬性返回到上一頁
示例如下
首先在Page_load中獲得並儲存該信息
Page_load(object objEventArgs e)
{
if(!IsPostBack)
{
if(RequestUrlReferrer!=null)
{
ViewState[UrlReferrer]=RequestUrlReferrerToString();
}
}
}
l 頁面回發後會改變RequestUrlReferrer將其指向當前頁面所以需要進行判斷只有在第一次請求頁面的時候才儲存該信息
l 因為可能上一次的url不存在所以需要進行判斷只有在RequestUrlReferrer存在的情況下才進行儲存
然後在返回函數中使用該信息
void Return()
{
if(ViewState[UrlReferrer]!=null)
ResponseRedirect(ViewState[UrlReferrer]ToString();
}
在使用RequestUrlReferrer時還要注意
() 如果上一頁面使用documentlocation方法導航到當前頁面RequestUrlReferrer返回空值
() 如果有AB兩個頁面在浏覽器中直接請求A頁面在A頁面的中Page_Load事件中導航到B 頁面則 RequestUrlReferrer返回空因為 在Page_load事件中頁面還未初始化所以無法記錄當前頁的信息導航到b頁面也就無法獲得上一頁面的信息
() 點擊刷新按鈕不會改變RequestUrlReferrer
From:http://tw.wingwit.com/Article/program/net/201311/12546.html