zoukankan      html  css  js  c++  java
  • Django提交POST表单“CSRF verification failed. Request aborted”问题的解决

    1、环境

    python 3.4

    Django 1.7

    Visual Studio 2015 PTVS

    2、问题

    提交表单,出现以下错误:

    CSRF verification failed. Request aborted.

    3、解决

    查看settings.py, 有 'django.middleware.csrf.CsrfViewMiddleware' 一句:

     1 MIDDLEWARE_CLASSES = (
     2     'django.contrib.sessions.middleware.SessionMiddleware',
     3     'django.middleware.common.CommonMiddleware',
     4     'django.middleware.csrf.CsrfViewMiddleware',
     5     'django.contrib.auth.middleware.AuthenticationMiddleware',
     6     'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
     7     'django.contrib.messages.middleware.MessageMiddleware',
     8     'django.middleware.clickjacking.XFrameOptionsMiddleware',
     9     'cstnet.middleware.urlsfilter',
    10     'jobfarm.middleware.MultipleProxyMiddleware',
    11     'jobfarm.middleware.OAuthJobFarmFilter'
    12 )

    在表单处理函数前添加 @csrf_protect :

     1 #申请表单处理
     2 @csrf_protect
     3 def doapply(request):
     4     context = {
     5         'group':request.POST['group'],
     6         'host':request.POST['host'],
     7         'image':request.POST['image'],
     8         'net':request.POST['net'],
     9         'vcpu':request.POST['vcpu'],
    10         'num':request.POST['num'],
    11         'remarks':request.POST['remarks']    
    12     };
    13 ...

    并在文件头导入命名空间,不然会找不到csrf_protect:

    1 from django.views.decorators.csrf import csrf_protect

    运行正常。

  • 相关阅读:
    数据仓库 VS 数据库
    准确率,精确率,召回率,F-measure 之间的关系
    OpenCV——查找、绘制轮廓
    OpenCV——仿射变换
    OpenCV函数 重映射
    Hough变换原理
    霍夫变换(直线检测、圆检测)
    边缘检测算子+滤波总结
    图像滤波—opencv函数
    图像滤波
  • 原文地址:https://www.cnblogs.com/legendjslc/p/5415594.html
Copyright © 2011-2022 走看看