![](/img/trans.png)
[英]Django - dealing with multiple CSRF tokens in the same template (ajax and form) Forbidden (CSRF token missing or incorrect.)
[英]Django Template: Csrf token invalid for multiple post request in the same form
我正在從事 Django 項目並陷入涉及 csrf 令牌的問題。
我有一個表格,我用 javascript function 處理提交,因為在同一個表格中我需要執行 2 次 POST。 形式是這樣的:
<form>
{% csrf_token %}
<input name="field_1" type="text">
....
....
<input name="file" type="file">
<button onclick="send_form()"> Send data </button>
</form>
send_form()方法使用 axios 執行兩個 post 請求。 第一個發送文本字段,第二個發送文件。 我需要這樣做,因為服務器有兩個不同的 api 用於管理文本數據和文件。
問題是第一個帖子成功,然后第二個帖子失敗,給出 403 錯誤,在 header 我可以看到錯誤
“CSRF 失敗:CSRF 令牌丟失或不正確。”
有沒有辦法以單一形式做到這一點? 我讀到有人將 csrf 應用於頁面的整個正文,但我不知道該怎么做。
謝謝你的任何答案。
您收到該錯誤的原因是您沒有指定您提出的請求類型。 這需要在<form>
標簽中完成
例如: <form action="call_view_function" method="post">
如果你調用views.py function,你應該在<form>
標簽而不是onclick=
中這樣做
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.