C# Asp.Net FormAuthentication在Safari浏览器中失败

C# Asp.Net FormAuthentication在Safari浏览器中失败,c#,asp.net-mvc,safari,forms-authentication,C#,Asp.net Mvc,Safari,Forms Authentication,我使用简单的方法创建cookies FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe); return RedirectToAction("Index", "Dashboard"); 不知何故,我调试了我的应用程序,发现User.Identity.IsAuthenticated始终为false,User.Identity.Name也为null 注意:上述行为仅适用于SAFARI,在Firefox和chrome等

我使用简单的方法创建cookies

FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
return RedirectToAction("Index", "Dashboard");
不知何故,我调试了我的应用程序,发现
User.Identity.IsAuthenticated
始终为false,
User.Identity.Name
也为null

注意:上述行为仅适用于SAFARI,在Firefox和chrome等其他浏览器上运行绝对正常。


我知道我的问题是重复的,谷歌给了我足够的解决方案链接,但我似乎无法解决我的问题。我使用的是.NET 4.5,Safari版本是5+。

您确定以下行工作正常,即验证cookie设置正确吗?您始终可以检查为站点创建的cookie。如果你不知道,就用谷歌搜索吧。这相当简单

下面的行实际上设置了一个身份验证cookie FormsAuthentication.SetAuthCookie(model.UserName,model.RememberMe)

如果未设置cookie,则表示在Safari上禁用cookie。如果他们被设置,那么我们可以进一步挖掘


如果正在设置cookie,则将cookie与在另一个浏览器中创建的cookie进行比较。可能会在这里发布,这样我们就可以看到发生了什么。

也许你应该尝试列出一些你已经尝试过的东西?例如,说Safari在cookie值的编码方面有问题,你试过了吗?你有没有任何样本是原始代码的精简版本来重新处理这个问题的?cookie没有使用
FormsAuthentication.SetAuthCookie(model.UserName,model.RememberMe)
,Safari中也启用了cookie。请仔细阅读问题,关于您的问题,未提及未设置cookies。话虽如此,问题显然是cookie没有被设定。我会检查一下,看看是否可以复制这个问题。嗯,我认为正确的身份验证设置了,这就是它在其他浏览器中工作的原因。看看这篇文章是否对你有帮助我刚刚用Safari 5.1.7首次使用User.Identity.IsAuthenticated复制了它waqar bhai为false,但我关闭了Safari重新打开了它,并将其设置为true。与User.Identity.Name的情况类似。如果你需要,我可以和你分享我的项目