将用户引导到异地然后返回时如何保持会话?

问题描述 投票:1回答:1

[网站A创建用户会话数据并向网站B发送请求。网站B查看所传递的信息,并将响应发送回网站A。网站A需要处理该响应并记录该用户会话的信息,重定向到网站B(或重定向回网站A)时,用户会话似乎为空。

是否可以将用户会话数据保留在网站A上?

编辑:我将不需要访问网站B上的会话数据,我只需要将其重定向到网站A后就可以在其中访问,但是似乎在重定向回网站时,它已被清空。

编辑2:添加粗略代码示例。问题是,从站点A重定向到站点A后,ASP.NET SessionID会重置,并且“客户”会话对象为null,并且从站点B返回站点A后不再可用。

站点A

...
CustomerObject customer = new Customer();
Session["customer"] = customer;
Response.Redirect("https://www.siteB.com?querystring=info");

站点B

... handles needs
Response.Redirect("https://www.siteA.com?querystring=info");

站点A

 //parse response//
 string info = Request["querystring"]
c# asp.net iis iis-10
1个回答
0
投票
您可以使用.Net Application Cache并在访问该高速缓存以及要保留的存储数据周围构建自定义类。或者您可以使用数据库来完成。

[在两种情况下,您都需要生成一个密钥,该密钥将保存在新的持久层中(我想您已经有一个生成的sessionId可以启动)。

在最简单的情况下,您可以在请求中发送此密钥,并在响应中要求它,这将使您能够识别和检索持久的会话数据。也许在不再需要时/一段时间后将其丢弃。

© www.soinside.com 2019 - 2024. All rights reserved.