我们在Web应用程序的付款过程中遇到了一个奇怪的问题,该问题导致会话数据丢失。
在此过程中,一旦我们的结帐页面用户被重定向到付款提供商的页面,并在其完成操作后立即被重定向回到我们的网站(我们指定的网址)。最后的重定向是通过浏览器对付款提供商的html代码的评估来完成的,该html代码基本上由发布到我们网站的表单和几行在页面加载时发布的javascript代码组成。此时,浏览器发出了发布请求,但未设置“ ASP.NET_SessionId” cookie,该cookie出现在对完全相同的域(我们的应用程序的域)的先前请求中。更奇怪的是,它设置了另一个我们使用的名为“ AcceptCookie”的cookie。它只是选择删除“ ASP.NET_SessionId” cookie。
为了说明这种情况,我拍摄了一些屏幕截图。 (在这些屏幕截图中,橙色和绿色矩形包含完全相同的值。)
payment provider's final response
post request that brings the user back to our site (made with javascript in the previous step)
最后,我们发现在较旧版本的浏览器中不会发生此问题。在Firefox 52上,它像一个超级按钮一样工作,但在Firefox 71上,发生了上述问题。
有什么想法吗?
注意:这是一个带有targetFramework =“ 4.5.2”的ASP.NET MVC应用程序>
祝您有美好的一天。
我们在网络应用程序的付款过程中遇到了一个奇怪的问题,该问题导致会话数据丢失。在此过程中,我们的结帐页面用户被重定向到付款...
我们知道了。