django - 用于访问 Django REST 框架的 secret API key

标签 django django-rest-framework

我的目标是通过指定 API Key 来限制客户端应用程序对 API 的访问。各种服务允许您通过 key 访问它们的 API,您必须获得 key 才能执行请求。

注意:这与用户身份验证无关。

在 django rest 框架中是否有任何直接的解决方案来做到这一点?或者只是在请求头中传递 key 然后手动处理它?

问候

最佳答案

使用 TokenAuthentication类,如文档所示 here .

您还需要设置适当的权限,可能使用 IsAuthenticated类(class)。

编辑 :道歉 - 重新阅读您的帖子,看起来您想要一个全局 key ,而不是每个用户的 key 。我建议使用 custom permission class检查请求 header ,如果它不存在/不正确则失败。

关于django - 用于访问 Django REST 框架的 secret API key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25593429/

相关文章:

python - 在 Django DRF 中注册多个路由 - 使用和调用 ModelViewSets 或 Generics 中的方法

Django老师学生简单的解决方案。使用单独的表或权限和组?如何?还有其他想法吗?

django - 在Django管理员中上传文件时出现UnicodeEncodeError

python - 如何清理 Django View 中的多个嵌套 if 语句

python - ModelViewSet API 端点是什么

python - Django-REST : Get User by username instead of primary-key

python - Django REST - @action 装饰器 "Unresolved reference ' Action '”

'NoneType' 类型的 Python 参数不可迭代

python - 有没有办法在创建用户对象时发送用户电子邮件?

python - 从帖子中检索元数据,然后按 django 中的元数据对帖子进行排序