gpt4 book ai didi

Django CSRF 失败 : CSRF token missing or incorrect

转载 作者:行者123 更新时间:2023-12-01 11:13:55 31 4
gpt4 key购买 nike

我正在使用 Django Rest Framework还有 django-rest-auth .

我有标准的 API 端点(/login、/logout、/registration...)

使用我的浏览器,我可以登录/列出我的用户/注销。
使用 Insomnia(API 请求者),我无法登录/注销,出现错误

"CSRF Failed: CSRF token missing or incorrect"



也许我需要添加CSRF header ,但老实说我不知道​​在哪里可以找到这个CSRF token ......也许我需要添加一些东西( @csrf_protect ?)到登录端点,但我被迫完全重写默认 View ?

最佳答案

解决方案

需要在Insomnia(https://support.insomnia.rest/article/49-cookies)的Header设置中设置X-CSRFToken
)。

  • 进入 Insomnia 中的标题设置
  • 添加新条目 X-CSRFToken
  • 搜索 vor cookie , 点击 Request => Cookie
  • 再次点击 Request => Cookie
  • 类型 csrftoken进入 Cookie 名称
  • 点击完成

  • 然后再试一次。

    How to solve "CSRF Failed: CSRF token missing or incorrect" with Django, Rest and Insomnia

    说明

    CSRF Token 由 Django 在 cookie 中设置。这是在对服务器的第一个请求中完成的。然后将 cookie 的值作为 X-CSRF-Token 发送回 header 中的服务器。

    您可以在浏览器的调试器中查看正在发生的事情(Chrome 中的 F12)
  • csrftoken Cookie 已设置
    enter image description here
  • csrftoken 在请求头中作为 X-CSRF-Token 发送回服务器
    enter image description here
  • 关于Django CSRF 失败 : CSRF token missing or incorrect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55846186/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com