问题描述
我在在线支付门户中遇到问题,当从商人门户重定向时,会话在ios 12浏览器中超时,我怀疑这是由于Samesite属性无法正确应用,目前它已在revreseproxy级别应用,是否存在解决方案?
解决方法
我在此处提供了一些详细信息:https://web.dev/samesite-cookie-recipes/#handling-incompatible-clients
摘要是您可以:
- 在两个单独的cookie中设置相同的数据:
Set-cookie: 3pcookie=value; SameSite=None; Secure
Set-cookie: 3pcookie-legacy=value; Secure
然后在接收端,您可以检查已接收到哪个cookie。如果
存在legacy
Cookie,那么您知道您使用的是旧版浏览器
并可以进行相应的调整。
- 基于
User-Agent
值检测浏览器。您可以在此处使用正则表达式:https://www.chromium.org/updates/same-site/incompatible-clients,但是任何形式的User-Agent
检测都非常脆弱,因此请谨慎行事。