我使用 FastApi 设置 cookie
response.set_cookie(key="rf_t", value=access_token, httponly=False, expires=120)
并且它在“localhost:
但是我需要子域和跨子域 cookie,所以我发现你可以在 \Windows\System32\Drivers tc\hosts 更改主机文件
并创建了几个带有子域的域,如下所示:
127.0.0.1 main.shop.localhost
127.0.0.1 admin.shop.localhost
127.0.0.1 store.shop.localhost
127.0.0.1 shop.localhost
我在前面使用 vue 3 vite,并像这样在 vite.config.js 中设置开发域和端口
server: {
port: 5000,
host: "shop.localhost"
},
我想这与 chrome 政策有关,因为它不是 https,但是有什么方法可以使用本地子域,并能够为它们设置交叉 cookie(或任何 cookie)?
非常感谢我的开发者们!
设置 cookie 时,可以尝试指定
SameSite=None
和 Secure
属性。这允许在跨域请求中发送 cookie,并且需要安全 (HTTPS) 连接。
response.set_cookie(key="rf_t",
value=access_token,
httponly=False,
expires=120,
samesite="None",
secure=True)
注意:这仅适用于开发环境
您还可以更新Chrome Flags开发用途:
chrome://flags/#same-site-by-default-cookies
chrome://flags/#cookies-without-same-site-must-be-secure