在React渲染的表格中,csrftoken为空的问题解决方法:
问题描述:在使用React渲染表格时,出现csrftoken为空的错误,无法完成表单提交。
解决方法:需要在React渲染的组件中添加csrftoken,具体解决步骤如下:
- 在客户端的JS代码中获取csrftoken:
const csrftoken = document.querySelector('[name=csrfmiddlewaretoken]').value;
- 在发送POST请求时,将csrftoken添加到请求头中:
fetch(url, {
method: 'POST',
headers: {
"X-CSRFToken": csrftoken
},
...
});
- 在React渲染的表单中添加csrftoken:
<form method="POST" action="">
<input type="hidden" name="csrfmiddlewaretoken" value={csrftoken} />
...
</form>
此时,csrftoken会被正确加载到表单中,可以正常提交表单数据了。