问题标签 [django-rest-framework-simplejwt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
968 浏览

django - 使用 RSA 算法 Django Rest Framework 简单 JWT 时出现错误无法反序列化密钥数据

使用 django rest 框架和简单的 jwt 身份验证和 RSA 算法时出现错误。

当我使用 HS 算法时,我的代码运行良好,但是当我将算法更改为 RS 时,出现以下错误:

无法反序列化关键数据。数据可能格式不正确,或者可能使用不受支持的算法加密。

我的设置:

视图和其他使用Djoser 包

Request POST | http://localhost:8000/api/jwt/create/

注意:使用 Postman 进行测试

0 投票
1 回答
318 浏览

django - 在 Django Rest Framework 中处理 JWT 身份验证和软删除用户

一旦用户删除他们的帐户,我正在尝试使用户名可用。默认情况下,用户名是唯一的,这意味着即使在帐户被软删除后,用户名也将不可用。

默认情况下,这是 django 开箱即用的设置。

is_active此处用于将模型标记为已删除。

为了能够利用UniqueConstraint并添加条件,我必须删除用户名的唯一性。

这适用于注册。用户删除帐户后,用户名可以在注册期间重新使用。但是,当用户登录时,会引发以下错误。

我正在尝试找出一种方法来检查用户是否is_active作为身份验证过程的一部分。有没有办法做到这一点?

0 投票
1 回答
401 浏览

django - 检索访问令牌时出错:b'{\n "error": "redirect_uri_mismatch",\n "error_description": "Bad Request"\n}'

尝试使用 Django rest + allauth + dj-rest-auth 从 Nuxt App 进行身份验证

第一个错误

allauth.socialaccount.models.SocialApp.DoesNotExist:SocialApp 匹配查询不存在。

通过更改 SITE_ID = 1 TO 2 解决了这个问题

其次,我收到此错误

0 投票
1 回答
61 浏览

vuejs2 - 在vuejs中刷新页面后权限被拒绝?

我正在尝试在 vuejs 3 中实现身份验证。我将 django 和 django 作为后端和用于生成令牌的简单 jwt。一切正常。生成的令牌就是这种格式。 在此处输入图像描述

这是我的身份验证商店,顺便说一下,我使用的是 axios 和 vuex

上面的代码工作正常,唯一的问题是每当我刷新页面时,我都无法执行任何操作,比如获取或发布。

甚至令牌在本地存储中也可用。

注意:-我认为我缺少刷新令牌之类的东西,我认为我需要使用刷新令牌,但我不知道如果刷新令牌有问题,我该如何使用刷新令牌。

在此处输入图像描述

0 投票
2 回答
117 浏览

django-rest-framework - 如何使用 django rest auth 实现 jwt 身份验证?

我正在尝试为我的项目实施 jwt 身份验证。我使用 django-rest-auth 进行身份验证。官方的rest-auth 文档说

将以下配置值添加到您的设置文件以启用 JWT 身份验证。

但它返回带有用户信息的令牌。不是accesrefresh令牌。

0 投票
3 回答
3576 浏览

django-rest-framework - 如何将 Simple JWT 用于自定义用户模型

我正在管理我的用户模型(针对客户),但我不知道如何将 simple-jwt 用于我的客户模型及其自定义登录视图。

模型.py

而且,我想通过保存刷新令牌来管理我的客户会话,谁能告诉我如何实现这一点。

0 投票
1 回答
342 浏览

django - 使用 Django,SimpleJWT 检查用户显示内容的权限属于他自己的公司

我正在使用 React(front)、Django(server-side)、Simple JWT for User Auth Model 和 Postgres DB。

让我解释一下我的模型:公司拥有许多财产,每个公司都有多个用户。当用户登录时,我希望他们看到属于他们自己公司的属性列表。当用户从列表中选择任何属性时,我需要再次检查用户是否具有权限,然后运行查询。我目前正在使用 Simple JWT 进行身份验证。当用户登录时,后端会生成访问和刷新令牌。对于从用户端发送的每个请求,我都会发送 JWT 访问令牌。在服务器端,我想解码令牌,查看公司用户所属的公司,相应地过滤查询并发送 JsonResponse。

这是我的公司模型:

这是属性模型:

这是房产数据

我应该如何在后端处理 JWT 令牌并检查属于哪个公司用户,相应地运行查询,然后发送成功消息以及过滤后的数据?

0 投票
1 回答
112 浏览

serialization - Django:用户注册后如何返回带有自定义声明的 JWT?

我知道如何使用simplejwt. 现在我想在用户注册后在包含电子邮件的令牌中返回自定义声明。我该怎么做呢?

我的序列化器:

它返回默认的 JWT 访问和刷新令牌。我想在此处的令牌中返回自定义声明。

风景:

0 投票
0 回答
454 浏览

reactjs - DRF Permission 类 IsAuthenticated 不适用于 React js JWT 身份验证

我使用 React 和 Django REST 创建了一个身份验证应用程序。创建帐户和登录时它工作正常。但是当我想在使用 IsAuthenticated 权限类登录后查看某些内容时,它不起作用。它将错误显示为图像。和图片一样. 未经许可,它可以正常工作。 REST 权限和 JWT 设置:

和反应代码:主页视图

AxiosInstance

0 投票
1 回答
123 浏览

python - 在 Django(drf 和 simplejwt)中究竟应该如何实现基于 JWT 的身份验证?

我正在努力理解应该如何在 Django 中实现基于 JWT 的身份验证(我使用的是 simplejwt)。我只是一个初学者,所以请为一些愚蠢的问题做好准备。rest-framework-simplejwt 文档非常少,并没有为像我这样的新手提供足够的细节。

因此,我按照官方文档的建议在 urls.py 中创建了路径。我从这里去哪里?我想我的困惑来自这样一个事实,即我不确定我必须在代码中的确切位置发布我的令牌。假设我正在登录用户。那么,为了获得令牌,我是否必须从视图内部向“token_create”端点发送请求?还是我必须以某种方式在我的序列化程序之一中指出它?'refresh_token' 端点呢?我需要使用特定的方法吗?

那么,令牌发行后我该怎么办?显然,我不应该将它保存在数据库中,因为它首先破坏了使用 JWT 的全部目的。据我了解,我应该将其附加到标头,以便用户的后续请求包含标头中的令牌。

前端将使用 ReactJS 编写,并将位于与我的 Django 后端 API 不同的服务器上,两者之间的通信将通过 CORS 进行配置。

在这种情况下,如何将令牌附加到标头并使其使用户的浏览器在每个请求中发送令牌?是否有某种可能对此有用的软件包?