繁体   English   中英

当我重定向到ASP.NET MVC中的另一个网站时如何保持会话

[英]How can I persist a session when I redirect to another website in ASP.NET MVC

网站A在网站B上发帖,B说“确定”并将对象存储到会话中。 A读取“确定”,然后将用户重定向到B。这时,会话对象为null。 两个网站都在同一个域中。 进行重定向时,我需要保留对象会话

来自MSDN,“ ASP.NET会话状态使您可以在用户浏览Web应用程序中的ASP.NET页面时为用户存储和检索值。”

您所谈论的是将值从一个Web应用程序持久保存到另一个Web应用程序,会话状态并非为此而设计。

您将需要将值持久存储到两个应用程序都可以使用的存储中,例如ASP.Net缓存或数据库。

尽管如上所述,可以将会话状态配置为持久保存到数据库,但是由于IIS通过会话对象管理该数据库,因此它仍然阻止跨应用程序访问会话数据。

为了使它起作用,有很多星星需要调整:

  1. 这两个站点必须位于同一域或该域的子域中。 如果您要处理两个完全不同的域名,那么您就走运了。

  2. 两个站点的会话模式都必须是它们都可以访问的StateServer或SQL Server。 如果是SQL Server,则必须将会话保留在两个站点都可以访问的数据库中。

  3. 您需要将每个站点的机器密钥配置为相同。 请参阅: https : //technet.microsoft.com/zh-cn/library/cc755177%28v=ws.10%29.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM