如果不是来自ASP.NET / C#中的重定向阻止查看页面

时间:2014-03-12 20:43:47

标签: c# asp.net webforms

我创建了一个页面,根据您从上一页传递的ID加载页面。但是,我不希望有人能够手动将.aspx页面输入地址栏。我只希望用户能够查看此页面,如果他们点击了那个页面上的按钮。我听说过Document.Referrer,但我没有在我的页面中使用任何Javascript,但这并没有提供足够的安全性。是否有任何内置功能或技巧来实现这一目标?

提前致谢!

2 个答案:

答案 0 :(得分:2)

我会看一下跨页帖子:

http://msdn.microsoft.com/en-us/library/ms178139(v=vs.90).aspx

具体来说,您可以检查它:(FROM MSDN):

if(PreviousPage != null)
{
    if(PreviousPage.IsCrossPagePostBack == true)
    {
         Label1.Text = "Cross-page post.";
    }
}
else
{
    Label1.Text = "Not a cross-page post.";
}

答案 1 :(得分:0)

您可以尝试检查HttpContext.Request.UrlReferrer(MVC上的Request.UrlReferrer)。如果他们直接输入URL,则为null。如果它们是从其他页面发送的,则会有引荐来源网址。