使用 JWT 切换方法进行身份验证 WP API



我有一个基本的WP站点,使用WP API 2(beta13.1)和JWT插件设置。如果我在已登录到 WP 时调用/token端点,则会得到成功的响应。

但是,如果我未登录,则会收到一条"No route was found matching the URL and request method"消息。

经过进一步挖掘,我可以在我的服务器访问日志中看到 POST 请求作为 GET 请求接收,因此必须在沿线的某个地方进行更改,因此我看到错误消息!

127.0.0.1 - - [06/Jun/2016:16:19:04 +0000] "GET /test/wp-json/jwt-auth/v1/token HTTP/1.1" 404 450 "http://localhost/test/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:46.0) Gecko/20100101 Firefox/46.0"

如果我在请求中添加有效的"wordpress_logged_in"cookie,它可以正常工作。

我不知道发生了什么,登录用户的请求不应该要求用户已经登录!

以防万一其他人偶然发现了这个问题,对我来说的问题是清漆。如果您在 Varnish 配置中有return (lookup),则在尝试缓存请求时,它会转换为 GET

请参阅:https://serverfault.com/questions/563560/varnish-transforming-post-to-get

最新更新