Skip to main content
 首页 » 编程设计

python之使用 Django Rest Framework 时如何获取初始 CSRF token

2024年10月25日3952php

我正在使用 Django Rest Framework 创建一个 API。用户仍然需要获得 CSRF token 才能进行 POST、PUT、PATCH 和 DELETE 调用。用户最初获得 CSRF token 的最佳做法是什么?我正在使用 TokenAuthentication。所以我只需要允许 API 获取用户名和密码并发回 token 。之后我就不需要 CSRF token 了。

我是否必须添加一个步骤以允许他们使用将返回 token 的 GET 方法调用来获取 CSRF token ?

我正在寻找有关如何最好地解决这个问题的建议。

请您参考如下方法:

使用 API,您即将打开一扇大门,无需任何 session 和浏览器即可在您的服务器上处理请求。 CSRF token 只是验证表单请求以确保它是从您的网站发送的。据我所知,关闭 API 的 CSRF 保护是绝对可以的。

您可以使用 csrf_exempt 装饰器。

阅读本文以了解有关 CSRF and Web API protection 的更多信息.