问题标签 [jwt-auth]
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.
vue.js - 何时刷新 JWT 令牌?
目前我在我的 Laravel 后端使用 JWT-Auth 来使用令牌保护我的 API 路由。但是,在一段时间后令牌变得无效并且我收到错误消息401 Unauthorized
。所以我想我必须在某处刷新令牌。什么时候做这件事最好?每次您提出请求时,我都会阅读有关这样做的信息,但我想确保这是正确的方法。我从他们的文档中使用了本指南:https ://jwt-auth.readthedocs.io/en/develop/quick-start/#create-the-authcontroller 。在这里,他们创建了一个新令牌的功能。但是每次我提出请求时我将如何实现呢?我只是在控制器中通过Axios
请求调用此函数还是在另一个控制器中调用它或其他什么?非常感谢任何提示。
顺便说一句,我有一个 Vue.js 前端。
c# - ASP.NET Core 2.2 JWT 身份验证
我最近一直在学习 ASP.NET Core 2.2 并尝试使用 JWT 令牌开发基于角色的登录示例(网站 + Web API)。
定义很简单:
- 如果用户的角色是“admin”,那么它会重定向到管理页面。
- 如果用户的角色是“用户”,那么它会重定向到用户页面。
但我在“带有 ASP.NET Core 2.2 的 JWT 令牌”上找到的大多数解决方案和文章仅适用于 Web API。
从以下文章中,我几乎了解了 JWT 令牌的工作原理以及如何在 Web API 端实现它:
现在我的问题是如何使用 ASP.NET Core 网站使用上述 API?
对于很多人来说,这可能是一个简单的问题,但我对 Web 开发还很陌生,很多东西都不了解。
任何帮助,将不胜感激。提前致谢。
php - 如何在 Laravel 5.8 中附加授权标头
我想附加Authorization: Bearer {yourtokenhere}
在我的 Laravel 中。如果在 Postman 中,我将 Authorization 放在 Headers 选项卡上并通过编写手动给出令牌值,Bearer {token}
这样我就可以保护特定的路线,但是如何在 Laravel 源代码中做到这一点?我应该在我的控制器中做什么,或者我应该在中间件或内核或其他地方添加另一种方法?这是因为我得到了{"error":"token_not_provided"}
每个访问受保护的路由jwt.auth middleware
。
这是给我的受保护路线{"error":"token_not_provided"}
:
这是我在 AuthController 中的登录方法:
php - JWT Auth 错误:无法从请求中解析令牌
目前我正在使用 JWT Auth 开发 Laravel 5.8,一切都在 Postman 中运行,但是当我尝试在浏览器上进行测试时,我遇到了很多错误,并且已经一一修复。现在,当我尝试使用 Request 传递 JSON Web Token 时出现另一个错误。未正确提供令牌。在我登录过程之后:
令牌生成成功。但是当我需要令牌到另一个控制器时,令牌生成失败,一个例子就是这个方法:
每次我想JWTAuth::parseToken();
我都会收到这个错误:
无法从请求中解析令牌
那么为什么会这样呢?我该怎么办?因为在signin
方法中,成功生成了token,但是在index
我无法访问token。感谢您的关注。
angular - 当我使用“浏览器刷新/重新加载”或 F5 刷新页面时,拦截器未执行
我目前正在学习 Angular 7,但我面临问题并希望您能帮助了解发生了什么。我正在使用 JWT 身份验证(Spring Boot Security),每次单击时都会调用我的拦截器来设置令牌,然后再将请求发送到服务器。当我使用浏览器后退/前进时,一切正常。但是如果点击“浏览器刷新”,拦截器不会被调用,我会得到一个 Whitelabel 错误页面。我的问题是:1-为什么刷新不调用我的拦截器?2-你知道如何解决这个问题吗?
感谢你们对我的帮助
php - 如何在 lumen 5.8.* 中使用 dingo 修复实现 jwt?目标 [Dingo\Api\Contract\Routing\Adapter] 不可实例化
我已经在我的 Lumen(5.8.4) 应用程序中将 tymon/jwt-auth 版本 1.0.0-rc4.1 实现为第三方,现在当我继续按照https://github.com/dingo/使用 Dingo 实现身份验证时api/wiki/Authentication在我需要添加它的步骤(或任何其他方式向 dingo 注册 jwt)
到 app.php 我得到这个错误
错误:目标 [Dingo\Api\Contract\Routing\Adapter] 在构建 [Dingo\Api\Auth\Auth, Dingo\Api\Routing\Router] 时不可实例化。
我想我已经搜索并尝试了互联网上关于这个主题的所有东西,因为我正在研究它 2 天,其中大多数都使用旧版本的 dingo 和/或 Lumen。我还尝试了在 git 上找到的不同适配器,但它们都不起作用。
这是我的设置:composer.json:
应用程序.php
有人在较新版本上进行过实施,或者有更好的方法吗?我尝试了一个工作示例 https://github.com/krisanalfa/lumen-jwt但正如我所见,上次更新是 2 年前,Lumen 版本是 5.4。我应该使用它还是不推荐使用它?
laravel - laravel 5.5 不支持 jwt auth lib
我是 Laravel 的新手,在 laravel 5.5.18 中使用 JWT 身份验证,但它对我不起作用,它在 api 登录时出错
Interface 'Tymon\JWTAuth\Contracts\JWTSubject' not found"
任何人都可以帮我解决它。
谢谢
javascript - 即使 Token 不为空,JWT 解码也会重新调整为空
JWT 解码不工作
我已经尽我所能
req.body.auth_token 不为空,它正在返回令牌!
android - 如何在原生应用中处理 JWT 过期机制
我正在 React Native 上构建一个混合应用程序,我们在后端使用 Django rest 框架。我们使用 JWT 来保护应用程序,应用程序的用例涉及存储敏感信息。
问题在于 JWT 到期。我需要使用 accessToken 访问 API 以获取新令牌,这可以正常工作,并且如果用户每天打开应用程序,令牌不会过期,这几乎是不可能的。
因此,用户每隔几天就会注销一次,因为当他打开应用程序时,令牌已过期。有没有更好的方法来处理这个?Facebook 应用程序、谷歌支付应用程序永远不会注销用户。
我尝试保留一个与用户关联的变量,暗示他是移动应用程序用户,因此除非他注销或明确这样做,否则该令牌永远不会过期,但我有评论这是一种危险的方法。
authentication - 为什么 JWT 是无状态认证?
我试图了解 JWT 身份验证如何是无状态的。在有状态身份验证中,会有一个会话 id。这里有一个已签名的 JWT 令牌。所以认证服务器发出 JWT 令牌,但是我可以说在后续请求中对 JWT 令牌的验证是由端点服务器(应用程序服务器)而不是认证服务器完成的。我相信这是可能的,因为 JWT 是用到期日期(以及一些其他信息)签名的,并且身份验证服务器的公共证书可用于所有端点服务器。
因此身份验证服务器将只负责发布令牌而不是验证。验证将由端点服务器完成。
我的理解正确吗?这就是 JWT 无状态的方式吗?否则,我看不出它与有状态身份验证有何不同,因为两者都可以使用令牌来实现。
在有状态身份验证中,中央服务器将负责发布令牌以及验证每个请求。