我正在制作一个django / angular项目。 Django是后端管理,Angular是前端/公共显示。我已经创建了一个Django 1.11应用程序并加载了所有文件,安装了依赖项等。在本地,该网站工作正常,并按预期。此外,由于表单将是Angular js,我在settings.py中注释了django.middleware.csrf.CsrfViewMiddleware
,我认为即使需要也会禁用csrf令牌,但显然不是。
设置服务器并安装文件后,会显示管理员登录页面,但是当我尝试登录时出现以下错误:
Forbidden (CSRF token missing or incorrect.): /admin/login/
对于为什么会发生这种情况的任何想法都将非常感激。
答案 0 :(得分:0)
您无法在settings.py中注释掉'django.middleware.csrf.CsrfViewMiddleware',CSRF中间件提供了易于使用的跨站点请求伪造保护。由于您使用的是Augualr js而不是django表单和视图,因此您可以在浏览器cookie中设置csrftoken cookie。请查看详细信息:https://docs.djangoproject.com/en/1.11/ref/csrf/#module-django.middleware.csrf