ios 12 个浏览器中的 Samesite 问题

Samesite issue in ios 12 browsers

我在在线支付门户中遇到问题,当从商家门户重定向时,会话在 ios 12 种浏览器中超时,我怀疑这是由于 Samesite 属性未正确应用,目前它已应用于revreseproxy 级别,有解决办法吗?

我在这里提供了一些详细信息:https://web.dev/samesite-cookie-recipes/#handling-incompatible-clients

总而言之,您可以:

  1. 在两个不同的 cookie 中设置相同的数据:
Set-cookie: 3pcookie=value; SameSite=None; Secure
Set-cookie: 3pcookie-legacy=value; Secure

在接收端,您可以查看收到了哪个cookie。如果 legacy cookie 存在,那么您就知道您使用的是旧版浏览器 并且可以相应地调整。

  1. 根据User-Agent值检测浏览器。您可以在此处使用一个正则表达式:https://www.chromium.org/updates/same-site/incompatible-clients 但是任何形式的 User-Agent 检测都是脆弱的,因此请谨慎行事。