我正在设置 Django 以发送 JWT 响应而不是视图。我尝试使用 django-rest-framework-simplejwt。
在这个框架中提供了一个TokenObtainPairView.as_view()返回一对jwt的函数。我需要使用另一个 Json 响应返回访问令牌,而不是提供的两个令牌。
理想情况下,我想要一个包含与此相同的访问令牌的 JsonResponse:TokenObtainPairView.as_view().
我尝试创建自己的视图,如下所示。
更新:在 Settings.py 中提供
SIMPLE_JWT = {
'ACCESS_TOKEN_LIFETIME': timedelta(days=1),
'REFRESH_TOKEN_LIFETIME': timedelta(days=1),
'ROTATE_REFRESH_TOKENS': False,
'BLACKLIST_AFTER_ROTATION': True,
'ALGORITHM': 'HS256',
'SIGNING_KEY': SECRET_KEY,
'VERIFYING_KEY': None,
'AUTH_HEADER_TYPES': ('Bearer',),
'USER_ID_FIELD': 'id',
'USER_ID_CLAIM': 'user_id',
'AUTH_TOKEN_CLASSES': ('rest_framework_simplejwt.tokens.AccessToken',),
'TOKEN_TYPE_CLAIM': 'token_type',
'SLIDING_TOKEN_REFRESH_EXP_CLAIM': 'refresh_exp',
'SLIDING_TOKEN_LIFETIME': timedelta(days=1),
'SLIDING_TOKEN_REFRESH_LIFETIME': timedelta(days=1),
}
Run Code Online (Sandbox Code Playgroud)
登录网址路径
urlpatterns = [
path('auth/', views.LoginView.as_view()),
]
Run Code Online (Sandbox Code Playgroud)
我创建的登录视图
class LoginView(APIView):
permission_classes = (AllowAny,)
def post(self, request, *args, **kwargs):
username = request.data['username']
password = request.data['password']
user = …Run Code Online (Sandbox Code Playgroud) 我终于能够更新我的 Angular 项目的所有 npm 包依赖项。这样做之后,我现在留下了下面的错误。当我将鼠标悬停在 Visual Studiomat-core上angular-material-theme时,它们显示为未声明的 mixins。感谢任何和所有的帮助。谢谢你!
./src/custom-theme.scss - Error: Module build failed (from ./node_modules/mini-css-extract-plugin/dist/loader.js):
ModuleBuildError: Module build failed (from ./node_modules/sass-loader/dist/cjs.js):
SassError: no mixin named mat-core
on line 10 of src/custom-theme.scss
>> @include mat-core();
---------^
at processResult (C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\webpack\lib\NormalModule.js:703:19)
at C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\webpack\lib\NormalModule.js:809:5
at C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\loader-runner\lib\LoaderRunner.js:399:11
at C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\loader-runner\lib\LoaderRunner.js:251:18
at context.callback (C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\loader-runner\lib\LoaderRunner.js:124:13)
at Object.callback (C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\sass-loader\dist\index.js:54:7)
at Object.done [as callback] (C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\neo-async\async.js:8069:18)
at options.error (C:\Users\ch33f\Documents\Projects\WebProjects\royalcompetition\royalcompetition\ClientApp\node_modules\node-sass\lib\index.js:294:32)
Run Code Online (Sandbox Code Playgroud)
我的 package.json 如下
{
"name": "royal_competition",
"version": "1.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng …Run Code Online (Sandbox Code Playgroud)