Request.UrlReferrer详解
Request.UrlReferrer可以獲取客戶端上次請求的url的有關信息。
? 這樣我們就可以通過這個屬性返回到“上一頁”,
示例如下
????
1.????? 首先在Page_load中獲得并儲存該信息
Page_load(object obj,EventArgs e)
???????????? {
???????????????????? if(!IsPostBack)
????????????????????{
???????????????????????? if(Request.UrlReferrer!=null)??//
????????????????????????{
??????????????????????????????????????????????????????ViewState["UrlReferrer"]=Request.UrlReferrer.ToString();
????????????????????????}
????????????????????}
???????????? }
l??????? 頁面回發(fā)后會改變Request.UrlReferrer,將其指向當前頁面,所以需要進行判斷:只有在第一次請求頁面的時候才儲存該信息
l??????? 因為可能“上一次”的url不存在,所以需要進行判斷,只有在Request.UrlReferrer存在的情況下才進行儲存
????????????
2.????? 然后在返回函數(shù)中使用該信息
void Return()
{
??? if(ViewState["UrlReferrer"]!=null)
??? ??? 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?
總結
以上是生活随笔為你收集整理的Request.UrlReferrer详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 静态数组实现线性表
- 下一篇: Ubuntu软件包deb的安装.