如何创建密钥以获取对 Django API 的请求?
How to create key to get a request to Django API?
我正在使用 Django 创建一个数据库,并且我正在使用 Excel 和 Apps 脚本访问它。我无法登录到我的超级用户帐户(我将拥有的唯一帐户)。因此,我想知道是否有一种方法可以设置通过 HTTP header 传递的密钥或密码,我可以使用它来访问我的 API.
目前我只有一个 API get 方法,但我会有更多的创建、更新等方法,我也希望能够对这些方法使用相同的密钥。这是一个部署在 heroku 中的非常简单的 Django 应用程序,所以我没有使用 django-REST-framework,也没有使用 graphene-django。因此,如果解决方案可以在不安装任何其他东西的情况下出现,那就太好了。不过,如果不行的话,还是通过graphene-django来解决比较好,因为我以前用过,比较熟悉
重要的是要注意 excel 文件和应用程序脚本都是私有的,因为我使用 django 作为小型个人项目的数据库管理器。
非常感谢您!
您尝试过使用 djangorestframework-api-key 吗?
过程就这么简单
$ pip install djangorestframework-api-key
# settings.py
INSTALLED_APPS = [
# ...
"rest_framework",
"rest_framework_api_key",
]
...
REST_FRAMEWORK = {
"DEFAULT_PERMISSION_CLASSES": [
"rest_framework_api_key.permissions.HasAPIKey",
]
}
$ python manage.py migrate
然后你的卷曲应该看起来像这样
$ curl -H "Authorization: Api-Key <API_KEY from admin page>" http://www.example.com
Django 身份验证系统的 REST 实现。 约瑟
此外,您需要一个 MOD HEADER,它是 Chrome 中的一个扩展
Add it from here
一旦您的 Django
项目启动并且 运行 转到
localhost:8000/auth/jwt/create/
用于通过提交 username
和 password
(即:POST
方法)
创建 access token
有了这个access token
,你需要在MOD HEADER in Request Header中设置它,你是很好去。
它是一个 JSON 网络令牌,这就是为什么你需要在它前面加上 JWT
前缀,然后是 access token
我正在使用 Django 创建一个数据库,并且我正在使用 Excel 和 Apps 脚本访问它。我无法登录到我的超级用户帐户(我将拥有的唯一帐户)。因此,我想知道是否有一种方法可以设置通过 HTTP header 传递的密钥或密码,我可以使用它来访问我的 API.
目前我只有一个 API get 方法,但我会有更多的创建、更新等方法,我也希望能够对这些方法使用相同的密钥。这是一个部署在 heroku 中的非常简单的 Django 应用程序,所以我没有使用 django-REST-framework,也没有使用 graphene-django。因此,如果解决方案可以在不安装任何其他东西的情况下出现,那就太好了。不过,如果不行的话,还是通过graphene-django来解决比较好,因为我以前用过,比较熟悉
重要的是要注意 excel 文件和应用程序脚本都是私有的,因为我使用 django 作为小型个人项目的数据库管理器。
非常感谢您!
您尝试过使用 djangorestframework-api-key 吗?
过程就这么简单
$ pip install djangorestframework-api-key
# settings.py
INSTALLED_APPS = [
# ...
"rest_framework",
"rest_framework_api_key",
]
...
REST_FRAMEWORK = {
"DEFAULT_PERMISSION_CLASSES": [
"rest_framework_api_key.permissions.HasAPIKey",
]
}
$ python manage.py migrate
然后你的卷曲应该看起来像这样
$ curl -H "Authorization: Api-Key <API_KEY from admin page>" http://www.example.com
Django 身份验证系统的 REST 实现。 约瑟
此外,您需要一个 MOD HEADER,它是 Chrome 中的一个扩展 Add it from here
一旦您的 Django
项目启动并且 运行 转到
localhost:8000/auth/jwt/create/
用于通过提交 username
和 password
(即:POST
方法)
access token
有了这个access token
,你需要在MOD HEADER in Request Header中设置它,你是很好去。
它是一个 JSON 网络令牌,这就是为什么你需要在它前面加上 JWT
前缀,然后是 access token