Django不为AngularJS前端提供CSRF令牌

2024-05-16 01:51:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从AngularJS前端向Django后端发送跨域PUT请求。当我在同一个域上运行时(前端在localhost:8000,后端在localhost:8001),我从$cookies得到我的csrftoken,并且可以发送一个成功的请求。当我将后端切换到外部QA服务器时,问题就开始了。我得到空的$cookies,没有sessionidcsrftokencookies。我没有主意了,所以我在这里寻求帮助,提前谢谢。你知道吗


Tags: djangolocalhostputqa主意跨域cookiesangularjs
1条回答
网友
1楼 · 发布于 2024-05-16 01:51:32

您将无法在其他域上获取Cookie,因为所有Cookie都是针对每个域设置的,这是出于安全原因。你知道吗

如果要访问其他域中的会话和Cookie,则必须复制它们。您可以通过发送一些带有特殊令牌(用于验证)的请求,并在django中创建视图,该视图将基于该令牌从某些存储中获取数据,并填充用户cookie,以便在下一个请求中它们将可用。你知道吗

相关问题 更多 >