Chrome开发人员工具打开时,Django CSRF令牌错误

时间:2019-01-21 17:53:20

标签: django google-chrome django-csrf

最近几天,Chrome一直出现一个非常奇怪的问题,我无法查明出了什么问题。本质上,当开发人员工具面板打开时,我在 提交表单时遇到一致的CSRF错误。关闭面板时,我没有收到错误消息。这使得几乎不可能调试某些事情。

我知道对middlewareCSRF令牌处理没有任何更改(我不是项目上唯一的开发人员,但是我已经检查了提交)。 Chrome的版本是71(12月4日发布,很早才开始),因此我怀疑它特定于浏览器。

我只是想知道是否有人经历过类似的经历?

Django错误是:

Forbidden (403) CSRF verification failed.
Request aborted.
Reason given for failure: CSRF token missing or incorrect.

2 个答案:

答案 0 :(得分:0)

在手动删除 crsf cookie 后,无论是否打开开发者工具,我都遇到了谷歌浏览器的这个问题。

我的问题出在 settings.py 中:

CSRF_COOKIE_SECURE = True

这使得它在开发过程中失败,因为浏览器只会通过 https 连接接受 cookie。所以将 CRSF_COOKIE_SECURE 设置为 false(默认)解决了我的问题。

相关文档部分:Django Docs

答案 1 :(得分:0)

我也有同样的问题。 我在我的代码中这样做来解决它:我在 Chrome 和 Firefox 中测试它

ajax