我有一個HTML格式如:的JavaScript後Django的形式給出了CSRF錯誤
<form id="comment" action="{% url "url_name" ur.id %}" method="post">{% csrf_token %}
<textarea required="required" maxlength="255" rows="4" class="form-control" name="comment">
</textarea>
<button class="btn btn-default" onclick="add_comment(event)">Comment</button>
</form>
這是一個HTML表單,而不是django's
形式。
這裏我在表格中包含了csrf token
。我已經發布這個表單的JavaScript,現在它給了我csrf verification failed
錯誤。
缺少什麼我在這裏?從django的表單類創建表單以使用csrf標記是否是強制性的?
需要幫助
我的JS是這樣的:
function add_comment(event) {
event.preventDefault()
var form = document.getElementById('comment')
var url = form.action
var method = form.method
var form_data = new FormData(form)
fetch(url, {method: method, body: form_data})
}
,我只是從我的Django視圖
當我看到需求網絡,CSRF標記和註釋爲通過渲染模板請求有效載荷..
給我們你的JavaScript代碼,並且視角.. –
@SancaKembang我已經更新了問題 – aryan
你有這個問題涉及CSRF令牌不被作爲表單提交的一部分傳遞。我並不太熟悉抓取,因爲我一直使用AJAX,但這是你出錯的地方。對不起,我無法提供更多幫助。 – tdsymonds