Symfony7+Api Platform重置密码功能搭建故障排查与解决
重置密码功能问题排查与解决记录
环境与需求
- 技术栈:Docker + Symfony + Api Platform
- 目标:基于
CoopTilleulsForgotPasswordBundle实现带成功邮件通知的重置密码功能
问题1:POST请求返回400错误
现象
向localhost:80/api/forgot-password/发送携带数据库中存在的email参数的POST请求,收到错误:
{"message":"No parameter sent."}
未生成预期的验证令牌。
尝试的无效操作
- 添加文档要求的
FP-provider参数(值为配置的customer提供者) - 自定义
GetTokenController
问题2:事件订阅器未触发,请求返回204 No Content
现象
调整services.yaml服务配置后,编写ForgotPasswordEventSubscriber监听CreateTokenEvent用于发送邮件,但onCreateToken方法未触发,请求返回204状态码。
最终解决与后续优化
- 次日功能自行恢复正常
- 完成Mailgun IP白名单配置
- 修改
mailer.yaml设置message_bus: false,便于查看事件订阅器的错误日志
内容的提问来源于stack exchange,提问作者B O
相关产品推荐
相关产品推荐

