【问题标题】:What are some reasons I could be getting a "Forbidden (CSRF cookie not set.)" error when trying to send a delete request?尝试发送删除请求时,我可能会收到“Forbidden (CSRF cookie not set.)”错误的一些原因是什么?
【发布时间】:2021-05-28 05:00:35
【问题描述】:

这真的让我很困惑,因为我知道我在标题中正确设置了 csrftoken。当我尝试在 Postman 上发送删除请求时,我得到了同样的错误。我一直在寻找解决方案几个小时,似乎找不到任何好的东西!你知道可能会发生什么吗?

这是一些相关的前端代码

var csrftoken = this.getCookie('csrftoken');
axios.defaults.headers.delete['X-CSRFToken'] = csrftoken
axios.defaults.headers.delete['X-Requested-With'] = 'XMLHttpRequest'
axios
  .delete(`http://localhost:8000/api/todos/${item.id}`)
  .then(res => this.refreshList());

如果您需要更多信息,请告诉我。任何帮助将不胜感激。

【问题讨论】:

    标签: axios backend http-delete csrf-token django-cors-headers


    【解决方案1】:

    我发现了问题。我的删除 URL 模式末尾有一个斜杠,正如您在此处看到的,在 axios 请求中的 ID 后面没有斜杠。编码员的经典错误。我讨厌这样的小虫子,不是吗?既然它已经消失了,仍然忍不住微笑。我想你只有通过经验才能学会检查这样的小事。这就是一个年轻的网络开发者的旅程。

    【讨论】:

      猜你喜欢
      • 2019-03-16
      • 2019-06-16
      • 2020-11-29
      • 2022-01-12
      • 1970-01-01
      • 2020-12-15
      • 2017-06-22
      • 1970-01-01
      • 2016-10-09
      相关资源
      最近更新 更多