从HttpMethod POST切换到Get时ASPX丢失会话

本文关键字:ASPX 会话 Get HttpMethod POST | 更新日期: 2023-09-27 17:57:55

最近,一个客户端要求我使用POST而不是GET(从第三方站点)登录到遗留站点。现在,所有需要的变量都在post中发送,而不是在查询字符串中发送。

问题是,在接收到所有变量后,它们会存储到Session中,然后重定向到应用程序中的正确页面(从页面中的徽标)。虽然这在使用GET调用页面时非常有效,但POST调用将在之后丢失所有会话变量

Response.Redirect(@"~/SOMEPAGE.aspx",false);

另一件奇怪的事情是,会话ID将保持不变,但所有值都将消失。使用服务器时。传输会话是完整的,但一旦使用Response.Redirect就会丢失。(无法更改所有代码。)

有人知道解决这个问题的方法吗?或者可以使用某种解决方法。

谢谢!!!

从HttpMethod POST切换到Get时ASPX丢失会话

发生这种情况有几个原因。

  • 您正在使用会话。代码中的放弃()
  • 您正在安全(https://)和不安全(http://)URL之间切换
  • 您的global.asax中有一些代码正在操作Session或。安全或。响应的路径属性。Cookie

编辑http://forums.asp.net/t/1670844.aspx