使用 [Authorize] 关键字是 ASP.NET MVC 控制器停止来自 运行 的脚本代码

Using the [Authorize] keyword is ASP.NET MVC controller stops Script code from running

我的 JavaScript 完美地包含在我的 ASP.NET MVC 运行 中的脚本标签中,但是,如果我在我的控制器中添加 Authorize 关键字,JavaScript不是 运行。不幸的是,我没有在网上找到任何关于这个问题的参考资料。

这是我的控制器:

namespace PROJECT.Controllers
{
   [Authorize]
   public class HomeController : Controller
{

如果我在特定的控制器方法上添加 Authorize 关键字,而不是像上面那样普遍使用,则会出现同样的问题。我不确定如何使用 Authorize 键或替代方法,以及启用 JavaScript 到 运行。

如有任何帮助,我们将不胜感激。

当您用 AuthorizeAttribute 标记操作方法时,只有经过身份验证和授权的用户才能访问该操作方法。如果用属性标记控制器,则控制器中的所有操作方法都将受到限制。在标有 AuthorizeAttribute 属性的控制器中,您可以使用 AllowAnonymousAttribute 属性指定特定操作方法不仅限于授权用户。

Authorize 属性可让您指明授权仅限于预定义的角色或单个用户。您使用 RolesUsers 属性指定允许哪些角色或用户访问操作方法。这使您可以高度控制有权查看站点上任何页面的人员。 如果未经授权的用户试图访问标有 Authorize 属性的方法,则 MVC 框架 returns 一个 401 HTTP 状态代码。如果站点配置为使用 ASP.NET 表单身份验证,401 状态代码会导致浏览器将用户重定向到登录页面。

MSDN Source.