问题标签 [lexikjwtauthbundle]
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.
symfony - Jwt身份验证包,注册后如何授权用户
Symfony 3.3.10,lexik/jwt-authentication-bundle": "~2.0"
我有注册端点,我/api/registrations
在其中创建用户并将其设置为 DB 并返回带有对象用户的 json。我有身份验证端点,/api/login_check
其中 JWT 返回带有刷新令牌的令牌我的问题,如何在注册操作中调用 JWT 身份验证处理程序并返回带有刷新令牌而不是用户对象的令牌?
这是我的安全
和我对 reg 的行动
symfony - JWTRefreshTokenBundle 更改 user_identity_field
我使用 jwt 令牌进行身份验证,我不得不更改user_identity_field
为电子邮件。之后,当我尝试打电话时,/api/token/refresh
我有 401 状态码。因为username
属性中的刷新令牌实体保存了用户的用户名数据
我的配置
和我的安全
现在/api/token/refresh
我有回应
因为\Gesdinet\JWTRefreshTokenBundle\Entity\RefreshToken
有username
来自用户的数据,但在我的配置中lexik_jwt_authentication
我改变了它
如何申请user_identity_field: email
刷新令牌?
php - 带有 Symfony3 授权的 Angular5
我有 Apache 服务器和 Postman 来检查 api url 是否正常工作并且我有奇怪的行为,这意味着当我http://localhost/xxx/web/app_dev.php/api/login_check
在 Postman 上使用正确的凭据调用时,LexikJwtBundle 正在返回令牌,所以我一切正常。但是我在 mozilla 或 Chrome 中这样做401 Bad Credentials
,我的 security.yml
Mozilla中的请求:
有什么问题?
symfony - Symfony - lexik jwt 身份验证 - 找不到令牌
我在我的后端使用 lexik_jwt_authentication 和 simfony 3.3。我的问题是我尝试登录时的响应是:
此外,如果我浏览我的网站,捆绑包会告诉我在所有页面中提供一个令牌。这没关系,但是当我在“login_check”中检查登录时不应该发生这种情况,在这种情况下我无法生成令牌。我究竟做错了什么?
谢谢
配置.yml:
安全性.yml:
symfony - 401 未找到 JWT 令牌
我提供了两个版本的security.yaml
文件。根据API 平台文档的第二个版本。API 平台向创建发送自定义用户提供程序。对于security.yaml
API 平台文档中推荐的第二个选项,我需要创建两个额外的文件。我没有将它们附加到该主题,但如有必要会这样做。
但我认为问题出在 JWT 中。
环境:
- 节点 v8.9.4
- 铬 64.0.3282.119
- Ubuntu 16.04
- axios 版本:0.16.2
- Vue.js 2.4.2
- Vue-axios 2.0.2
- api平台/api包:1.0
- Symfony 4.0.4
用户.php
第一个选项 security.yaml
第二个选项 security.yaml
标头
卷曲
带标题的卷曲
在浏览器中
.env
lexik_jwt_authentication.yaml
jwt - 使用 LexikJWTauthenticationBundle Symfony 3.3 为现有用户获取令牌
我是单元测试的菜鸟,我想测试我的 API。因此,当我尝试在 /login_check 路径和 CRUL 命令行中访问时,LexikJWTAuthenticationBundle 工作正常。但是当我尝试做 TestCase 时,我得到了这个错误:
1) Tests\AppBundle\Controller\StoreControllerTest::testPOSTRate GuzzleHttp\Exception\ClientException: 客户端错误: GET http://localhost:8000/api/stores导致 401 Unauthorized response: {"code":401,"message" :"无效的 JWT 令牌"}
我的 testPOST 函数:
symfony - Symfony JWTToken 更改字段以生成
我使用 Symfony 3.3.10"lexik/jwt-authentication-bundle": "~2.0",
和user_identity_field
我使用电子邮件
但是在我的用户之后,用 调用 put 请求email
,我的意思是将电子邮件更改为另一个。更改后,当我调用另一个 api 时,例如获取用户配置文件,我有错误:
我明白了,因为我更改了用于生成令牌的电子邮件,但我认为令牌保存在会话中,并且在更改电子邮件或密码后不需要重新生成令牌。
我的问题是如何更改生成令牌字段,例如我想使用一些常量字段,例如 id?
symfony - API 平台 - 带有 JWT 身份验证的 Swagger UI
我想在 Swagger 上添加“授权”按钮,如下所述:https ://api-platform.com/docs/core/jwt#documenting-the-authentication-mechanism-with-swaggeropen-api
我安装了 LexikJWTAuthenticationBundle,它适用于 Curl。但是当我浏览到http://localhost:8000/api时,我只看到{"code":401,"message":"JWT Token not found"}
.
我错过了什么吗?
这是我的security.yaml
:
我的api_platform.yaml
:
jwt - Symfony4:找不到路径“/api/login_check”的控制器。路由配置错误
我很想通过 JWT 设置 symfony4 api JSON 登录。安装了 api 平台核心包,我按照以下说明操作:https ://api-platform.com/docs/core/jwt/
我按照描述创建了自定义用户提供程序。通过打开 URL /api/login_check 错误消息“找不到路径“/api/login_check”的控制器。路由配置错误。” 发生。
通过发送 POST 请求,我得到了 html 中的错误页面。
这是我的routes.yaml:
这是我的security.yaml:
bin/console debug:route返回:
有人知道我的错误是什么吗?
php - Symfony ClassNotFoundException - JwtAuthenticator
我正在处理一个现有项目,该项目使用 symfony 提供 Web 服务。我是 Symfony 技术的新手,但我在 Laravel 方面有很好的经验,该项目在 JwtAuthenticator 中存在问题。
Symfony\Component\Debug\Exception\ClassNotFoundException
试图从命名空间加载类“JwtAuthenticator”
问题是这个问题在windows OS中不会出现,但是在linux Ubuntu中工作时会出现,到目前为止我发现缓存数据似乎很麻烦,也无法在不将文件夹访问权限更改为777的情况下删除它们。但是一旦如果它被授予完全访问权限并且如果缓存文件夹被清空,则应用程序运行没有错误,但从下一个请求它再次发生。因此,如果完成了删除缓存中的文件,那么它就可以工作。
这里使用JwtAuthenticator来提供认证验证
谁能帮我解决这个问题。