【问题标题】:How to check if user Authorized or not in client side Using Jquery?如何检查用户是否在客户端使用Jquery授权?
【发布时间】:2012-07-04 18:18:58
【问题描述】:

我正在为 asp.net MVC3 Razor 视图工作。我已经创建了基于每次单击左侧菜单的动态加载选项卡。

还有我的 jquery:

var form = $("ul#autotab li").click(function () {

                $tabs = $("#tabs").tabs({
                    tabTemplate: "<li id='" + tab_title + "'><a href='#{href}'>#{label}</a> <span class='ui-icon1 ui-icon-close'>x</span></li>",
                    add: $.ajax({
                        type: "GET",
                        url:'/Product/GetDetailsForTab/',
                        success: function (result) {
                            $("#tabs" + counter).html(result);
                        }
                    })
                });
                $tabs.tabs("add", "#tabs" + tab_counter, tab_title);
            }

在这里,如果我单击左侧菜单之一,我想在 jquery 选项卡功能中检查用户是否已授权。如果用户未授权意味着它应该重定向默认登录页面。我已经在'/Product/GetDetailsForTab/'ActionResult 中设置了 Authorize 属性。

上面的代码可以运行,但问题是, 如果未授权意味着,它将重定向带有标签内容的登录页面。这里我需要在新窗口中重定向页面而不是标签内容区域。

谢谢,

【问题讨论】:

    标签: asp.net-mvc-3 jquery-ui-tabs form-authentication


    【解决方案1】:

    您可以查看 Phil Haack 的 following blog post。在其中他说明了一个很好的解决方案,它允许您防止表单身份验证模块在出现 AJAX 请求时重定向到登录页面,但返回一个真实的 401 状态代码,您可以在客户端脚本中拦截并采取相应的行动。

    【讨论】:

    • 我看到了你提到的博客文章。我认为它与我更接近,我是 MVC3 和 Jquery 的新手,所以我无法理解完整的帖子。你能提供一些代码吗?谢谢,
    • 我无法为您提供比 Phil Haack 的博客文章中已经解释的更多的代码。这就是你所需要的。如果您无法理解此代码,我建议您开始阅读文档中有关 jQuery 的一些入门教程:docs.jquery.com/Main_Page 此外,如果您对实现有一些具体问题,您应该毫不犹豫地展示您迄今为止的进展并解释困难你遇到过。 Phil Haack 解释得很好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-01
    • 2016-05-19
    • 1970-01-01
    • 2017-03-06
    相关资源
    最近更新 更多