带有web API身份验证的AngularJS

带有web API身份验证的AngularJS,angularjs,asp.net-mvc,cookies,asp.net-web-api,Angularjs,Asp.net Mvc,Cookies,Asp.net Web Api,我最近开始学习AngularJS,并尝试创建一个简单的登录系统。创建和存储用于授权的cookie的一些方法看起来比我使用的.net方法复杂得多,因此我的第一个想法是通过调用API来继续使用该身份验证方法,并保持angular UI端没有这些 这篇文章中建议了这个选项- 但是,当我尝试实现此功能时,它可以很好地进行身份验证,但不会保存此cookie。如果我再次访问API并尝试引用cookie之类的内容 FormsAuthentication.GetAuthCookie(userName, cre

我最近开始学习AngularJS,并尝试创建一个简单的登录系统。创建和存储用于授权的cookie的一些方法看起来比我使用的.net方法复杂得多,因此我的第一个想法是通过调用API来继续使用该身份验证方法,并保持angular UI端没有这些

这篇文章中建议了这个选项-

但是,当我尝试实现此功能时,它可以很好地进行身份验证,但不会保存此cookie。如果我再次访问API并尝试引用cookie之类的内容

FormsAuthentication.GetAuthCookie(userName, createPersistentCookie);
它只会说那里什么都没有


有没有一种简单的方法可以在我不使用的API中保留此cookie?

下面是如何实现的,这还可以让您在auth cookie中包含自定义信息


SPA和Web应用程序身份验证的新标准是使用JSON Web令牌(JWT)。使用JWT,您的所有安全信息都封装在一个可以加密的令牌中,所有身份验证数据都可以在任何一方序列化,包括声明、角色、授权等。您好,感谢您的响应。我明天才能尝试,但我认为区别在于HttpCookie应该在API调用之间保持持久性,而不是FormsAuthCookie?是的,FormsAuthentication.GetAuthCookie方法只创建一个新的cookie。它不会让你得到先前制作的饼干。另一方面,Response.Cookies[FormsAuthentication.FormScookeName]将为您提供现有的身份验证cookie。