Request.UrlReferrer詳解

 Request.UrlReferrer能夠獲取客戶端上次請求的url的有關信息。瀏覽器

  這樣咱們就能夠經過這個屬性返回到「上一頁」,
示例以下
    
ide

1.      首先在Page_load中得到並儲存該信息函數

Page_load(object obj,EventArgs e)
             {
                     if(!IsPostBack)
                    {
                         if(Request.UrlReferrer!=null)  // 
                        {
                                                      ViewState["UrlReferrer"]=Request.UrlReferrer.ToString();
                        }
                    }
             }
url

l        頁面回發後會改變Request.UrlReferrer,將其指向當前頁面,因此須要進行判斷:只有在第一次請求頁面的時候才儲存該信息spa

l        由於可能「上一次」的url不存在,因此須要進行判斷,只有在Request.UrlReferrer存在的狀況下才進行儲存
             

orm

2.      而後在返回函數中使用該信息事件

void Return()it

{io

    if(ViewState["UrlReferrer"]!=null)class

        Response.Redirect(ViewState["UrlReferrer"].ToString();

}

在使用Request.UrlReferrer時還要注意: 
1.  若是上一頁面使用document.location方法導航到當前頁面,Request.UrlReferrer返回空值
2.  若是有A,B兩個頁面,在瀏覽器中直接請求A頁面,在A頁面的中Page_Load事件中導航到B 頁面,則    Request.UrlReferrer返回空。由於 在Page_load事件中頁面還未初始化,因此沒法記錄當前頁的信息,導航到b頁面也就沒法得到上一頁面的信息    3.  點擊刷新按鈕不會改變Request.UrlReferrer 

相關文章
相關標籤/搜索