symfony - Symfony 5.2 验证 json_login 请求
问题描述
我正在 Symfony 5.2 中开发一个 RESTFUL API,它允许用户使用用户名和密码进行身份验证才能访问它。
我的防火墙配置如下:
login:
pattern: '^/v1/login'
methods: [POST]
anonymous: true
stateless: true
provider: user_provider
user_checker: App\Security\UserChecker
json_login:
check_path: '/v1/login'
success_handler: App\Security\Handler\AuthenticationSuccessHandler
failure_handler: lexik_jwt_authentication.handler.authentication_failure
我创建了一个验证器和一个匹配的路由,以便我可以确保用户提交有效数据,例如不提交空密码:
v1_login:
path: /v1/login
methods: POST
controller: App\Http\Token\Action\LoginAction
defaults:
_format: json
我所有的其他路由都以与验证器相同的方式设置,但没有调用此路由。我认为 Symfony 忽略了这一点,并使用 user_provider、user_checker 和成功处理程序来管理这一切。但这意味着我无法先验证请求。
还有什么我需要做的吗?
解决方案
推荐阅读
- asp.net-core - 我可以在 dotnet core 中添加两个以上的 appsettings.json 文件吗?
- bash - 为 bash 输出处理创建临时文本文件并在处理结束后删除文件的最佳方法是什么
- android - 如何在 Kotlin (Android) 中向简单服务器发出 HTTP/POST 请求?
- reactjs - Laravel 8 无法运行 npm run dev
- azure-redis-cache - 如何使用 redis commond 查找 azure redis 缓存总内存
- google-chrome - 浏览器总是得到未压缩的脚本。用 Brotli 预压缩
- android - 有没有办法我们可以从 Linux 的终端下载 Sdk 命令行工具?
- android - 浮动操作按钮在相对布局中不浮动
- c# - C# 套接字编程。允许 2 个应用程序使用相同的套接字/TCP 连接
- git - 如何 repo 初始化本地 .git 和本地 manifest.xml