在不同的URL之间传递数据

时间:2012-10-09 13:00:37

标签: asp.net iis-7

我需要在加载页面之前检查传入请求的来源

例如:

for user to view www.mysite/page1.aspx

request should come through www.othersite/page1.aspx

所以在第1页上加载mysite我需要检查请求是否来自otherite中的page1。

我试过了Page.Request.UrlReferrer,但我看到一些帖子告诉每个浏览器可能不支持Page.Request.UrlReferrer。

我无法在网址上传递可见参数。

2 个答案:

答案 0 :(得分:0)

当您不希望允许来自任意网站的请求时,这是一个常见问题。

您可以做的是,在会话中创建一个变量并将此变量放在Page1.aspx中。当页面回发时,您应该返回该变量,它也应该与会话中存储的变量匹配。如果没有,您可以确定该请求来自其他服务器。

答案 1 :(得分:0)

您可以在首页上使用PostBackUrl

并在到达的页面中使用PreviousPage访问您的参数

if (this.PreviousPage != null)
{
    var control = Page.PreviousPage.FindControl("..."); //Adjust your Id and add cast
}        

Nota:这也是为了提供更好的安全重定向设置而创建的。