C# 授权Web API和401错误

C# 授权Web API和401错误,c#,asp.net-mvc,authentication,asp.net-web-api,authorization,C#,Asp.net Mvc,Authentication,Asp.net Web Api,Authorization,在同一个解决方案中,我有一个MVC和一个Web API项目,在MVC项目中,我有一个非常小的管理区域,由一个登录名和密码保护(仅针对一个用户)。在这个区域,我使用API调用获取clinet端的数据 这是我的登录功能: public ActionResult SubmitLogin(string UserName, string Password) { if (ModelState.IsValid) { if (UserName ==

在同一个解决方案中,我有一个MVC和一个Web API项目,在MVC项目中,我有一个非常小的管理区域,由一个登录名和密码保护(仅针对一个用户)。在这个区域,我使用API调用获取clinet端的数据

这是我的登录功能:

public ActionResult SubmitLogin(string UserName, string Password)
    {
        if (ModelState.IsValid)
        {
            if (UserName == "xxxxx" && Password == "yyyyy")
            {
                FormsAuthentication.SetAuthCookie(UserName, true);
                return RedirectToAction("Index", @"Admin/Users");
            }
        }
        var errors = (from value in ModelState.Values
                      from error in value.Errors
                      select error.ErrorMessage).ToList();

        if (errors.Count == 0)
        {
            errors.Add("UserName or Password are incorrect");
        }

        ViewBag.Message = errors;
        return View("Index");
    }
登录表单工作正常,问题在于API调用,我的API控制器是
[Authorize]
,但当我发出请求时:

self.getUsers = function (callback) {
    $.get("../MySite.API/Users/GetUsers/", callback);
}
我得到一个401错误

我知道我必须以某种方式发送带有AJAX请求的
AuthCookie
,但我不确定如何发送


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

请参阅。希望这对你有帮助。维努萨评论中的链接对你有帮助吗?@RuardvanElburg不太有帮助。