heroku Cookie不在开发人员工具中,但在通过SSL传输时可以在请求标头中看到

q1qsirdb  于 2022-11-13  发布在  其他
关注(0)|答案(1)|浏览(87)

前端:React后端:Django CD:Heroku用于前端和后端SSL:正确
如屏幕截图所示,cookie显示在我的请求头中,但它没有显示在我的cookie开发工具中。对于CSRF令牌,我使用了@ sure_csrf_token,并配置了屏幕截图中所示的设置,但它仍然没有显示在浏览器开发工具中。我还发送了来自前端的带有凭据的请求,并允许来自后端的凭据,这也附在屏幕截图中。可以从挂锁信息中看到cookie,但开发者工具看不到。
第一页第二页
前端和后端都被部署到不同的heroku容器,因为团队使用的是monorepo。
x1c4d 1x指令集
Cookie如何从Django发送到React的示例
设置cookie(关键字='refreshToken',值= refreshToken,最大使用期限= 12 * 60 * 60,相同站点=“无”,安全=True)
每一个在本地都工作得很好,直到我用了Heroku CD,之后它就变酸了。Cookie没有被设置为浏览器,阻止了我在使用js-cookie库时获得Cookie。
我已经确保了cookie是安全的,并且samesite设置为none,因为前端和后端都部署到不同的容器中,使用不同的heroku URL。

polhcujo

polhcujo1#

对于同样面临这个问题的人,请确保前端和后端都指向同一个域。Cookie不会通过跨域设置为浏览器。
也将域包含到HttpResponse中
response = HttpResponse() response.set_cookie(key='refreshToken', value = refreshToken, max_age = 12 * 60 * 60, samesite="None", domain=".yourdomain.com", secure=True)

相关问题