Django CSRF验证失败。请求中止。-未设置CSRF cookie

里士

我知道这个问题以前曾被问过。我已经尝试了人们提供的几乎所有选项,但似乎无法解决。我是一个完全的新手,所以请让我知道我要去哪里错了。

我正在尝试编写一个简单的原始表格。到目前为止,我还没有实现任何身份验证或会话机制(但是从我读到的内容来看,这个问题无关紧要。如果我错了,请纠正我)。

当我尝试提交表单时,出现以下错误:

Forbidden (403)
CSRF verification failed. Request aborted.

Reason given for failure:
    CSRF cookie not set.

这是我的代码:

我的Views.py具有以下方法:

def submit(request):
    global alphabet_array
    dishes = Dish.objects.all().order_by('name')
    if request.method == "POST":
        print request.POST['restaurant']
        print request.POST['rating']
        render_to_response('index.html', {}, context_instance=RequestContext(request))
    else:
        render_to_response('index.html', {}, context_instance=RequestContext(request))

许多人已经说过,使用RequestContext可以解决此问题,但对我来说,这是行不通的。

该模板如下所示:

  <form role="form" action="/submit/" method="post">{% csrf_token %}
                <div class="form-group">
                  <label for="">Restaurant Name</label>
                  <input type="text" name="restaurant" class="form-control" id="">
                </div>
                <div class="form-group">
                  <label for="">Rating</label>
                  <select class="form-control" name="rating">
                    <option>--</option>
                    <option>1 (very bad)</option>
                    <option>2 (bad)</option>
                    <option>3 (average)</option>
                    <option>4 (good)</option>
                    <option>5 (excellent)</option>
                  </select>
                </div>
               <button type="submit" class="btn btn-primary btn-block"><i class="fa fa-check-circle"></i> Save</button>
    </form>

settings.py中的middleware_classes看起来像:

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
)

django.middleware.csrf.CsrfViewMiddleware在这里,并且在“ django.contrib.sessions.middleware.SessionMiddleware”之下

我的url.py有条目:

url(r'^admin/', include(admin.site.urls)),
    url(r'^index/$', 'testapp.views.index'),

    url(r'^starts_with/(?P<alphabet>.+)/dish/(?P<dish_id>\d+)/$', 'testapp.views.alphabet_dish'),
    url(r'^starts_with/(?P<alphabet>.+)/$', 'testapp.views.alphabet'),
    url(r'^submit/$', 'testapp.views.submit'),

我真的不确定这是什么问题。正如我所说,我在这里阅读过类似的帖子,并尝试了回复中提到的所有内容。我错过了什么?我的浏览器是Chrome,并且它接受Cookie。

尤维

您的CSRF设置很好。问题是您没有返回结果请记住,视图是一个函数。您不仅需要return render_to_response(...)调用它(这也是为什么通过删除CSRF会出现didn't return an HttpResponse错误的原因)

除此之外,您正在做一些一般性的错误,这些错误是django-ically错误的:

因此:

def submit(request):
    # global alphabet_array
    dishes = Dish.objects.all().order_by('name')
    if request.method == "POST":
        print request.POST['restaurant']
        print request.POST['rating']

    return render(request, 'index.html', {})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Django CSRF验证失败。请求中止。-未设置CSRF cookie

来自分类Dev

python Django REST Framework CSRF失败:未设置CSRF cookie?

来自分类Dev

Django:禁止(未设置CSRF cookie。)

来自分类Dev

Django 1.6“ CSRF验证失败。请求中止。”

来自分类Dev

CSRF验证失败。请求中止-Django,POST

来自分类Dev

CSRF验证失败。请求中止Django 1.6

来自分类Dev

CSRF验证失败。请求中止。Django 1.7

来自分类Dev

django CSRF验证失败。请求中止

来自分类Dev

CSRF验证失败。请求中止。Django的

来自分类Dev

Django返回403错误-“未设置CSRF Cookie”

来自分类Dev

Django REST Framework Forbidden CSRF cookie 未设置

来自分类Dev

Django 1.9 AJAX表单CSRF令牌403错误-“未设置CSRF Cookie”

来自分类Dev

使用AngularJs发布请求时未设置CSRF Cookie-Django后端

来自分类Dev

如果存在以方括号“ [”开头的cookie值,则Django CSRF cookie未设置错误

来自分类Dev

错误:“ CSRF验证失败。请求中止。” 当与Django一起使用jQuery json时

来自分类Dev

错误:“ CSRF验证失败。请求中止。” 当与Django一起使用jquery json时

来自分类Dev

CSRF验证失败。请求中止(Django中的总初学者)

来自分类Dev

Django CSRF cookie设置不正确

来自分类Dev

CSRF验证失败。请求中止。// Dajaxice,Ajax

来自分类Dev

禁止(403)CSRF验证失败。请求中止

来自分类Dev

CSRF验证错误失败。请求中止

来自分类Dev

CSRF验证失败-Django

来自分类Dev

Django验证:CSRF失败

来自分类Dev

Python请求返回:CSRF验证失败。请求中止

来自分类Dev

403禁止,CSRF验证失败。请求中止。python请求

来自分类Dev

未在多个浏览器中设置Django CSRF cookie

来自分类Dev

在 Angular 中获取并插入 Django 设置的 CSRF cookie 的值

来自分类Dev

CSRF验证失败。请求中止。在Facebook画布上

来自分类Dev

CSRF验证失败。更新表单时请求中止

Related 相关文章

  1. 1

    Django CSRF验证失败。请求中止。-未设置CSRF cookie

  2. 2

    python Django REST Framework CSRF失败:未设置CSRF cookie?

  3. 3

    Django:禁止(未设置CSRF cookie。)

  4. 4

    Django 1.6“ CSRF验证失败。请求中止。”

  5. 5

    CSRF验证失败。请求中止-Django,POST

  6. 6

    CSRF验证失败。请求中止Django 1.6

  7. 7

    CSRF验证失败。请求中止。Django 1.7

  8. 8

    django CSRF验证失败。请求中止

  9. 9

    CSRF验证失败。请求中止。Django的

  10. 10

    Django返回403错误-“未设置CSRF Cookie”

  11. 11

    Django REST Framework Forbidden CSRF cookie 未设置

  12. 12

    Django 1.9 AJAX表单CSRF令牌403错误-“未设置CSRF Cookie”

  13. 13

    使用AngularJs发布请求时未设置CSRF Cookie-Django后端

  14. 14

    如果存在以方括号“ [”开头的cookie值,则Django CSRF cookie未设置错误

  15. 15

    错误:“ CSRF验证失败。请求中止。” 当与Django一起使用jQuery json时

  16. 16

    错误:“ CSRF验证失败。请求中止。” 当与Django一起使用jquery json时

  17. 17

    CSRF验证失败。请求中止(Django中的总初学者)

  18. 18

    Django CSRF cookie设置不正确

  19. 19

    CSRF验证失败。请求中止。// Dajaxice,Ajax

  20. 20

    禁止(403)CSRF验证失败。请求中止

  21. 21

    CSRF验证错误失败。请求中止

  22. 22

    CSRF验证失败-Django

  23. 23

    Django验证:CSRF失败

  24. 24

    Python请求返回:CSRF验证失败。请求中止

  25. 25

    403禁止,CSRF验证失败。请求中止。python请求

  26. 26

    未在多个浏览器中设置Django CSRF cookie

  27. 27

    在 Angular 中获取并插入 Django 设置的 CSRF cookie 的值

  28. 28

    CSRF验证失败。请求中止。在Facebook画布上

  29. 29

    CSRF验证失败。更新表单时请求中止

热门标签

归档