為檢視函式新增修飾器(區域性禁用)
匯入模組
from django.views.decorators.csrf import csrf_exempt
在函式前面新增修飾器
@csrf_exempt
def index(request):
if request.method == 'get':
return render(request,'index.html')
if request.method == 'post':
username = request.post.get('username')
password = request.post.get('password')
if username == 'admin' and password == 'admin123':
return redirect('')
else:
return render(request,'index.html',)
為表單新增csrf_token驗證
在settings.py設定(全域性禁用)
middleware = [
'django.middleware.security.securitymiddleware',
'django.contrib.sessions.middleware.sessionmiddleware',
'django.middleware.common.commonmiddleware',
# 'django.middleware.csrf.csrfviewmiddleware', #注釋這行
'django.contrib.auth.middleware.authenticationmiddleware',
'django.contrib.messages.middleware.messagemiddleware',
'django.middleware.clickjacking.xframeoptionsmiddleware',
]
ajax使用
在模板檔案中新增
$.ajaxsetup(}' },
});
ajax提交出現的問題記載
1.普通ajax提交的時候是沒法提交input type file的,換句話說 files獲取不到ajax提交過去的值。2.ajax提交的時候,設定datatype json 和沒設定此值是有很大區別的 設定了datatype json 了的請求,伺服器段返回json資料 echo json enc...
關於防重複提交出現 頁面過期的問題
在做包剪錘遊戲時,下注的時候提交乙個json 請求。不斷的重新整理後,點選下注,提示頁面過期。經分析研究有如下疑問 1.頁面已經產生了新的token,點選下注按鈕 匹配session中的token,發現找不到了token的值,提示頁面已經過期,請重新整理。2.右鍵重新整理之後,為何也沒有產生新的to...
Django Ajax提交post命令403問題
如ajax請求是使用jquery來處理,則django提供了一段 來獲取csrftokencookie 文件 在接收函式前加修飾器,如 from django.views.decorators.csrf import csrf exempt csrf exempt def ajaxview requ...