这个问题似乎只会影响Firefox,然后只会影响一些用户(没有明显的版本/安全设置差异)。我们在我们的Laravel应用程序中失去了会话。
我们有一个支付集成,使用iframe Opayo服务器集成。这将在Laravel应用程序的iframe中打开支付表单。付款细节是提供的,付款是成功的-包括击中一个Opayo网络钩,以确认交易。
Web钩子返回一个重定向URL,Opayo使用该URL重定向用户(在iframe中自然)。这个重定向URL只是与应用程序(即iframe父程序)位于同一个站点上的一个URL。
在iframe加载重定向URL时,站点会话将立即终止。最初,URL处的页面从iframe (set window.top.location)中跳出,还执行了一些ajax调用--我删除了这两个操作,以确认它们对会话不负责。
该站点在HTTPS上使用有效的证书送达。会话cookie设置为安全,仅限HTTP,并且相同的站点是“lax”
是什么导致了这种行为?
发布于 2022-01-21 17:53:37
这是因为iframe并不完全是您在系统上运行的页面。因此,如果iframe不在您的系统上,它将无法访问应用程序中的cookie。
如果iframe来自您的应用程序,我建议您使用iframe的url中的查询参数在iframe中传递这些必要的信息。类似于:
<iframe src="https://www.foo.bar?value=1&value_2=2"></iframe>https://stackoverflow.com/questions/70804709
复制相似问题