django中怎么安装jwt
时间: 2024-12-19 14:23:19 浏览: 6
在Django中安装JWT(JSON Web Tokens),你需要先确保你的Python环境已经安装了pip包管理器。通常,你可以使用下面的命令来安装`django-jwt-auth`这个第三方库,它是一个用于处理JWT认证的Django插件:
```bash
pip install django-jwt-auth
```
安装完成后,你还需要将其添加到你的Django项目settings.py文件中的INSTALLED_APPS列表里,以便于启动应用:
```python
INSTALLED_APPS = [
# ...
'rest_framework',
'djoser', # 如果你的应用需要用户注册,可能还需要这个库
'rest_framework.authtoken', # 如果你想继续使用内置的token认证
'django.contrib.auth', # Django自带的认证系统
'rest_framework_jwt', # JWT认证库
]
```
接下来,你需要配置JWT认证的设置,例如密钥、过期时间等。这通常放在settings.py的REST_FRAMEWORK JWT部分:
```python
REST_FRAMEWORK = {
# ...
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework.authentication.SessionAuthentication',
'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
),
'JWT_AUTH': {
'JWT_EXPIRATION_DELTA': timedelta(days=7), # 设置JWT过期时间为一周
'JWT_SECRET_KEY': 'your_secret_key', # 替换为你的密钥
'JWT_GET_USER_SECRET_KEY': lambda user: user.pk, # 获取用户的唯一标识
},
}
```
最后,记得运行迁移来更新数据库结构:
```bash
python manage.py makemigrations
python manage.py migrate
```
完成以上步骤后,你就可以在Django API中开始使用JWT进行身份验证了。
阅读全文