使用Mojolicious::Plugin::OpenAPI时POST请求出现400错误求助
问题原因及解决办法
这个400错误的核心原因是你的Mojolicious::Lite脚本里,给/api/echo路由设置了Accept请求头的强制验证规则,要求客户端必须发送特定格式的Accept值,但curl默认发送的Accept头是*/*,完全不符合脚本里的校验要求,所以被拒绝并返回错误。
解决办法有两种:
- 调整curl请求,添加符合要求的Accept头。比如脚本要求Accept为
application/json,就用这条命令:curl -H "Accept: application/json" -X POST http://127.0.0.1:3000/api/echo - 如果不需要限制客户端的Accept头,直接修改脚本里的路由配置,删掉对Accept头的校验规则。比如你可能用了类似
->requires(Accept => 'application/json')的代码,把这部分去掉即可。
内容的提问来源于stack exchange,提问作者smith
相关产品推荐
相关产品推荐

