问题标签 [django-rest-framework-jwt]
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.
django - JWT token expire_delta 和 JWT Refresh Expiration Delta django jwt 的区别
我正在使用 django 休息框架 JWT 库
http://getblimp.github.io/django-rest-framework-jwt/
JWT令牌过期有两个设置
JWT_EXPIRATION_DELTA
以秒为单位
上面的文档:
您可以通过将 JWT_VERIFY_EXPIRATION 设置为 False 来关闭过期时间验证。如果没有过期验证,JWT 将永远存在,这意味着攻击者可以无限期地使用泄露的令牌。这是 Python 的 datetime.timedelta 的一个实例。这将被添加到 datetime.utcnow() 以设置到期时间。
默认为 datetime.timedelta(seconds=300)(5 分钟)。
和JWT_REFRESH_EXPIRATION_DELTA
文件:
mit on token refresh 是一个 datetime.timedelta 实例。这是可以刷新未来令牌的原始令牌之后的时间。
默认为 datetime.timedelta(days=7)(7 天)。
我不确定不同的用例。我将 jwt 令牌过期增量设置为 20 秒。
然后得到一个令牌将其保存到本地等待 20 秒关闭我的浏览器窗口并重新导航到该站点
期望不会登录,因为令牌会过期但我已登录。
那么JWT令牌过期增量有什么区别
和 JWT 刷新过期增量?
django-rest-framework - 尽管权限类 Angular 5,django rest 框架 JWT 返回匿名用户
我在前端使用 Angular 5。使用 HTTP 拦截器,如果客户端登录,它会发送一个令牌以及向我的服务器发出的任何 http 请求。我可以登录我的系统。所以 JWT 方案工作正常。
拦截器是这样的:我控制台记录令牌以确保它被添加,并且它在我的日志中正常工作。
令牌方案有效,我已经测试过了。
设置已正确设置。本指南中需要完成的几乎所有事情都已完成:
http://getblimp.github.io/django-rest-framework-jwt/
转到实际视图:
权限类:
错误:
如果 request.user['issuitssuperuser']: TypeError: 'AnonymousUser' 对象没有属性 ' getitem ' [10/May/2018 20:36:51] "OPTIONS /api/user/suits/HTTP/1.1" 500 21855 正在执行系统检查...
但为什么呢?这不酷。我做错了什么没有让这很酷?我希望它很酷。
django-middleware - Django JWT 身份验证 - 用户在中间件中是匿名的
我正在使用 Django JWT 在我的项目中启动身份验证系统。另外,我有一个中间件,问题是在其中,用户由于某种原因是匿名的,而在视图中我可以通过request.user
. 这个问题让我发疯,因为前段时间这段代码运行良好!这是 JWT 的错误还是我做错了什么?
相关 settings.py 模块:
我也遇到了帮助我检索实际用户的资源,但是!我仍然无法设置时区(timezone.activate(pytz.timezone(tzname))
似乎被忽略了。
django - 在 django 中用抽象用户覆盖用户模型的保存方法
具有多种两种用户类型的 Django 项目。我按照本教程为内置的用户模型提供了两种类型的标志。当我尝试登录到 django rest_framework_simple_jwt 的登录端点时,响应。覆盖保存方法是否有问题。
{ "non_field_errors": [ "没有找到具有给定凭据的活动帐户" ] }
python - DRF 向未激活的注册用户发送新的激活码
这是 django rest 框架项目。这次我想将帐户激活码重新发送给注册用户(目前未激活)我写了这样的视图,但我得到服务器响应说:用户帐户被禁用......我知道用户现在被禁用但我想根据他/她的电子邮件和 ID 向他发送新的激活码..
注意:我在我的应用程序中使用 jwt 进行身份验证
这是我的观点:
对我解决这个问题有什么建议吗?关于我的观点是正确的方法吗?
这是相关模型:(这是与用户表相关的配置文件模型,并且有activation_code字段来存储代码)
服务器响应:
php - Lumen 5.6:会话的替代方案
我正在尝试为我的小应用程序构建安全登录,所以我决定通过使用 JWT firebase 库来使用 JWT 方法,我发现除了一些动态数据(如会话)之外,我无法撤销我的令牌。并且 Lumen 从 lumen 5.2 开始就停止提供 session 包,我知道他们停止支持 session 可能是有原因的。
我有 Tymon JWT 包,但它不适用于 lumen 5.6。这就是我使用 Firebase JWT-PHP 作为替代方案
的原因
django - 用于通道 websocket 身份验证的 Django jwt 中间件
我正在尝试为 django 频道设置身份验证中间件。我希望这个中间件只对 websocket 请求有效。
似乎在这种情况下我没有获得完整的中间件功能。例如我无法response = self.get_response(scope)
工作:
现在这个中间件一切正常(它只为 websocket 请求激活,而不是在 中注册settings.py
),除了我需要一种方法来修改响应状态代码(阻止匿名用户并设置错误代码ExpiredSignatureError
)。任何帮助表示赞赏。我使用 Django2.0.6
和频道2.1.1
。jwt 身份验证通过djangorestframework-jwt
中间件:
路由.py
django-rest-framework - restframework-jwt 如何处理有效负载?
我使用 Django restframework 来实现 api 服务器。
我还使用 djangorestframework-jwt 进行令牌身份验证。
[urls.py]
一切正常。但我想知道如何从令牌中提取有效负载?
例如,有文章表。
[/article/serializers.py]
[模型.py]
[视图.py]
在这种情况下,我只想返回正确的响应 payload['userid'] == article's userid。
如何从 jwt 令牌中提取用户名?
以前,我只是使用jwt而不是djangorestframework-jwt,所以只是解码请求数据并使用它。
但是现在我使用djangorestframework-jwt,我很困惑我该怎么做。
有什么解决办法吗?
谢谢。
django-rest-framework - Django REST框架与多个应用程序一起工作
我的目标是使用生成的 JWT 令牌(第二个应用程序)授权可浏览的 API(第一个应用程序)。我创建了两个应用程序,1. API - 拥有所有数据 2. 身份验证 - 验证用户后生成 JWT 令牌。
现在,当我在生成它说的令牌后尝试访问 API 时,没有提供身份验证凭据。
我的意思是,有没有办法使用 JWT 令牌对 Browsable API 进行身份验证?而不是创建用户会话。
python - 在 Django 中将 JWT 与自定义用户模型一起使用时遇到问题
我已经开始了一个新的 Django 项目,并且像文档建议的那样,我创建了一个自定义用户模型以防万一,并确保在设置AUTH_USER_MODEL
中进行设置。
我注意到当你这样做时你不能运行python manage.py makemigrations
你实际上必须指定自定义用户模型所在的应用程序python manage.py makemigrations <appname>
。一旦我这样做了,我就可以启动服务器了。
我按照这篇文章将 JWT 集成到我的新项目中:Django React JWT
如果没有自定义用户模型,帖子效果很好,但是一旦我添加了自定义用户模型,我就会开始收到这些错误:
似乎 ti 与序列化程序有关,因为我使用 pdb 进行跟踪并且正在生成令牌,但传回的用户对象没有被正确序列化......