在我的ASP.NET应用程序中,在某些时候我必须重定向到另一个域来进行用户身份验证,如果成功,该域将重定向回我的域 .
例如:
my domain: www.domainA.com
other domain: wwww.domainB.com
flow: domainA.com (goes to)-> domainB.com (goes to)-> domainA.com
所以我想要做的是在转到domainB之前将会话对象存储在domainA中,然后在返回到domainA.com时恢复会话对象 . (不确定这是否可能)
我所说的是asp.net使用 sessionID 将创建一个名为"ASP.NET_SessionId"的cookie,所以当它返回我的域时,它将用于恢复会话 . (再次不确定是否真的)
如果以上陈述为真,我该如何恢复会话对象?
如果不是这样,那么如何将我的会话对象存储在domainA.com中,直到它通过domainB.com上的身份验证流程然后返回到domainA.com?
P.S:当它回到domainA.com时,cookie仍然具有相同的值 .
1 回答
Session
变量存储在服务器上 . 为每个新用户创建一个新的会话变量 . 服务器存储用户's session with a unique session ID, so that every user' s可以唯一标识会话 .SessionID结合了客户的详细信息,例如用户的IP,使用的浏览器,浏览器版本,操作系统,操作系统版本等 .
我们可以使用
HttpCookie("ASP.NET_SessionId", "")
来获取此sessionID . 您可以在重定向到另一个页面之前保存在会话对象中 . 如果用户身份验证成功,您可以将'domainB'页面的布尔值传递给'domainA'页面 . 如果布尔值为true,则不恢复会话 .有关SessionID用法的更多信息:Refer this page.