我使用简单的方法创建cookie。
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
return RedirectToAction("Index", "Dashboard");
我以某种方式调试了我的应用程序,发现User.Identity.IsAuthenticated
始终为false,User.Identity.Name
也为空。
注意:以上行为仅适用于SAFARI,并且与其他浏览器(如I.E,Firefox和Chrome)完全兼容。
我知道我的问题是重复的,谷歌给了我足够的解决方案链接,但我似乎无法解决我的问题。我使用的是.NET 4.5,Safari版本是5 +。
答案 0 :(得分:1)
您确定以下行正常工作,即正确设置了身份验证Cookie吗?您始终可以检查为网站创建的Cookie。如果你不知道只是google它。它相当简单。
以下行实际上设置了身份验证Cookie FormsAuthentication.SetAuthCookie(model.UserName,model.RememberMe);
如果未设置cookie,则意味着在Safari上禁用cookie。如果它们被设定,那么我们可以进一步挖掘。
如果正在设置cookie,则将cookie与在另一个浏览器中创建的cookie进行比较。并且可以在此发布,以便我们可以看到最新情况。