【问题标题】:Django Retrieve CRSF tokenDjango 检索 CSRF 令牌
【发布时间】:2020-10-29 12:31:37
【问题描述】:

我想检索 CRSF 令牌,以便可以从网站外部进行 POST,例如通过 POSTMAN 或其他外部应用程序。我已经公开了一个 API 端点,供用户上传文件,他们可以直接在网站内部进行操作。

但是需要 CRSF 令牌。我希望提取它(用户将通过外部客户端登录,因此我希望能够传入 CRSF 令牌,以便他们可以包含它并提交文件,当然它不会是可见的,程序会手动设置它时他们在外部程序上点击上传)

【问题讨论】:

  • 呃,你所做的正是 CSRF 试图阻止的。
  • 如果我想公开一个端点供用户调用,我应该怎么做?
  • 嗯,最简单的方法是通过添加@csrf_exempt为该视图禁用csrf
  • @crimson589 ,我们可以从浏览器 cookie 存储中复制 CSRF 令牌并用作 POST 请求中的授权标头吗?

标签: django django-forms django-file-upload


【解决方案1】:

如果你想用 Postman 访问 Django,做 API 端点(可能使用 Django Rest Framework)。

然后在 JS 前端库中可以显式添加 CSRF 令牌https://docs.djangoproject.com/en/3.0/ref/csrf/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-09
    • 2013-08-11
    • 2016-08-03
    • 2021-07-14
    • 2015-10-25
    • 2012-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多