以前在这里看到过这个,但我没有看到真正的解决方案。服务器的 Node Express express-session 模块或 cookie-session 模块发回一个 Session Cookie,但由于我没有在 SameSite/Secure 属性中编码,它们不存在并且在随后的 POST 到服务器上执行客户端失败为 Not登录,使用 403。正如预期的那样。
下面是相应的服务器代码,使用 express-session:
它通过 Set-Cookie 生成了一个 Session Cookie。注意 SameSite='none' 和 Secure=true 属性不包括在内,并且正如预期的那样,不存在。
现在,我已将 sameSite 和 secure 属性添加到会话对象并再次运行登录。
让我们看看从这个登录返回的响应标头,以及添加到会话对象的属性。我们不仅看不到 Set-Cookie Response Header 上的属性,而且没有返回任何 cookie!
看来,当这两个属性被添加到 express-session 或 cookie-session 中的会话对象时,结果是没有返回 cookie。意思是随后对服务器的 POST 将返回 403,用户未登录。
我真的很难过。我花了很多时间在这上面!感谢您的想法和帮助。