添加 CSRF 令牌以请求标头时无法读取未定义的属性"值" 普通 JS



我试图将CSRF令牌添加到请求标头,但它返回错误:

TypeError: Cannot read property 'value' of undefined

在我的django模板中,我添加了{%csrf_token%},我的函数如下:

addFavorites (id)  {
return fetch(`/favorites`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-CSRFToken': document.getElementsByName('csrfmiddlewaretoken')[0].value
},
...

我错过了什么?

当您单独运行document.getElementsByName('csrfmiddlewaretoken')时,会得到什么?

问题是第一个索引中没有任何内容,或者它没有返回数组。因此它返回undefined。由于undefined没有value属性,这就是您得到的错误。

相关内容

最新更新