MVC C# 检查用户是否在 ajax 请求上通过身份验证

MVC C# check if user is authenticated on ajax requests

在执行 ajax 请求时验证用户是否通过身份验证的正确方法是什么?

直到现在我都使用 JSonResultAllowAnonymous,但现在我想验证用户是否已通过身份验证,因为我需要来自经过身份验证的用户的数据来执行某些操作。我不想在视图中使用隐藏字段,因为这不安全,我想使用 ajax 来实现,因为我不想刷新页面。有没有办法在 ajax 请求中验证身份验证?或者有其他方法可以实现吗?

不知道我是否理解正确,但在你的控制器方法中你 return JsonResult 你可以检查任一

Request.IsAuthenticated 

User.Identity.IsAuthenticated

如果为真,那么您可以为登录用户做额外的事情。

public JsonResult Index()
{
   if(Request.IsAuthenticated)
   {
      //Do actions for logged in user
   }
   else{

   } 
}