我需要将请求重定向到TempData的另一个动作以获取特定请求。我知道TempData使用会话来存储数据。
如果请求到达server01并且请求将TempData重定向到另一个操作,请求将保留在server01上还是可以转到server02?如果它转到server02,我将无法正确处理TempData。
有没有办法在server01上保留特定重定向的请求?或者我是否必须创建一个cookie,将数据指向我的数据库并检查请求是否存在cookie?
此致
注意:负载均衡由位于服务器所在的网络外的设备和服务器不在IIS Web场中处理。
答案 0 :(得分:1)
有没有办法在server01上保留特定重定向的请求?
您需要使用StateServer
或SQLServer
至store your sessions而不是InProc
。另一种可能性是将负载均衡器配置为始终将来自同一IP的请求发送到同一服务器。
当然,所有这些都是非常糟糕的想法。实现这一目标的最佳方法是简单地摆脱会话和TempData,并以无状态的RESTFul方式设计应用程序。我最喜欢的sessionState
模式如下:
<sessionState mode="Off" />