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