回覆列表
-
1 # 使用者2873166950085
-
2 # 水母星人
1)啟用中介軟體2)post請求3)驗證碼4)表單中新增{% csrf_token%}標籤
Django 原生支援一個簡單易用的跨站請求偽造的防護。當提交一個啟用CSRF 防護的POST 表單時,你必須使用上面例子中的csrf_token 模板標籤。第一步:django第一次響應來自某個客戶端的請求時,後端隨機產生一個token值,把這個token儲存在SESSION狀態中;同時,後端把這個token放到cookie中交給前端頁面;第二步:下次前端需要發起請求(比如發帖)的時候把這個token值加入到請求資料或者頭資訊中,一起傳給後端;Cookies:{csrftoken:xxxxx}第三步:後端校驗前端請求帶過來的token和SESSION裡的token是否一致;
我上次在用django的時候遇到過這個問題,資料如下:django對POST請求需要csrf_token驗證,後端會檢測前端發過來的token,如果有問題可以會出現403Forbidden的錯誤。這個token是由後端在頁面GET請求頁面檔案的時候就放進去的,可以在模板中使用