Cookies FormsAuthentication:用户数据丢失(但在Cookie中) NETMVC3 格式认证(自定义) iPad MobileSafari iframe(同一域)
在与Cookies FormsAuthentication:用户数据丢失(但在Cookie中) NETMVC3 格式认证(自定义) iPad MobileSafari iframe(同一域),cookies,forms-authentication,mobile-safari,user-data,Cookies,Forms Authentication,Mobile Safari,User Data,在与formsTicket.UserData斗争后,我发现httpContext.User.Identity.Ticket.UserData是空的(在MobileSafari中,不是其他的)原始表单sauthenticationHttpCookie包含正确的值 怎么会这样 代码: public void UpdateContext() { if(httpContext.User.Identity为FormsIdentity) { //从当前用户获取表单标识 FormsIdentity id=(F
formsTicket.UserData
斗争后,我发现httpContext.User.Identity.Ticket.UserData
是空的(在MobileSafari中,不是其他的)原始表单sauthenticationHttpCookie包含正确的值
怎么会这样
代码:
public void UpdateContext()
{
if(httpContext.User.Identity为FormsIdentity)
{
//从当前用户获取表单标识
FormsIdentity id=(FormsIdentity)httpContext.User.Identity;
//创建自定义主体实例并分配给当前用户(带缓存)
HttpCookie cookie=HttpContext.Current.Request.Cookies.Get(FormsAuthentication.formscookeName);
FormsAuthenticationTicket票证=FormsAuthentication.Decrypt(cookie.Value);
var cookieUserData=ticket.UserData;//不为空
var HttpContextIdentityUserData=id.Ticket.UserData;//空!
...
}
}
任何线索都会有帮助
Lg瓦拉帕
PS:如果有关系的话,我会在同一个域的iframe中使用我网站的一个页面。因此问题如下:
当我注销并访问一个执行了
历史记录的页面时,出现了这个错误
查看Fiddler的流量,我看到Asp.Net使用了无cookieless身份验证模式,因此身份验证被编码到url。现在,当出现history.back()
时,url指向注销url,其中现在的身份验证信息无效。。。讨厌的虫子在我身边
强制Asp.Net使用cookies成功了强>
Lg
瓦拉帕发现这是一个老问题,但我面临着类似的问题。您能解释一下如何强制asp.net使用cookies吗?提前感谢您,很抱歉打扰您:))