【问题标题】:checking from which site i am redirected to my site in mvc .net在 mvc .net 中检查我从哪个站点重定向到我的站点
【发布时间】:2012-04-04 11:31:54
【问题描述】:

我想限制用户直接打开我的网站(有点好笑但就是这样)。

用户应该先去另一个站点,在那里登录,然后才允许他们从那个站点重定向到我的站点。

我试图在下面的方法中访问请求对象,但它抛出了一个异常:

 protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RegisterRoutes(RouteTable.Routes);
        }

我的网站是 MVC2 C#

没有会话,登录我的网站

提前致谢

【问题讨论】:

    标签: c# asp.net-mvc-2 .net-3.5


    【解决方案1】:

    您可以为此使用referer。但是,由于这是一个 http 变量,它绝对不是防故障的。发送与否取决于浏览器,使用Tamper Data之类的工具很容易修改。我不建议为此目的依赖推荐人。

    如果您还管理用户被重定向的其他站点,您可以生成某种散列,并将其与 url 作为请求参数一起发送。当哈希正确时,欢迎用户。

    【讨论】:

    • 我试过 Request.UrlReferrer.AbsolutePath 和 Request.UrlReferrer 但它只有应用程序范围,当我来自其他应用程序/URL时它不起作用
    • 正如我所说,它是否发送包含引用者取决于浏览器。当我创建一个带有链接的新 html 文件并从我的本地计算机运行它时,没有服务器,引用者不包括在内,但是当我将它放在服务器上时。如果您以这种方式进行测试,您可能也不会看到它。尝试在jsfiddle.net 或类似的地方创建一个指向您的应用程序的链接(本地主机可以),以便在服务器上进行快速测试。
    猜你喜欢
    • 2015-09-14
    • 2020-12-15
    • 2023-03-22
    • 2017-07-25
    • 1970-01-01
    • 2016-10-01
    • 1970-01-01
    • 2019-07-03
    • 1970-01-01
    相关资源
    最近更新 更多