Wordpress REST API を使用していますが、次の問題があります。
「POST」または「DELETE」リクエストを作成しようとすると、「wp-json/wp/v2/posts」などの標準エンドポイントでも 401 エラーが発生します。
ローカルでは問題なく動作しますが、私の Web サーバーでは動作しません。
サーバーに「POST」リクエストを送信しようとしたときの応答は次のとおりです。
{
"code": "rest_cannot_create",
"message": "Sorry, you are not allowed to create new posts.",
"data": {
"status": 401
}
}
...そしてヘッダー:
Access-Control-Allow-Credentials →true
Access-Control-Allow-Headers →Authorization
Access-Control-Allow-Methods →POST, GET, OPTIONS, PUT, DELETE
Access-Control-Allow-Origin →
Access-Control-Expose-Headers →X-WP-Total, X-WP-TotalPages
Age →0
Allow →GET
Connection →keep-alive
Content-Length →111
Content-Type →application/json; charset=UTF-8
Date →Wed, 06 Apr 2016 13:59:45 GMT
Server →Apache
X-Content-Type-Options →nosniff
ローカルサーバーからの「wp-json/wp/v2/posts」に対する「POST」リクエストのヘッダーは次のとおりです。
Access-Control-Allow-Credentials →true
Access-Control-Allow-Headers →Authorization
Access-Control-Allow-Methods →POST, GET, OPTIONS, PUT, DELETE
Access-Control-Allow-Origin →
Access-Control-Expose-Headers →X-WP-Total, X-WP-TotalPages
Allow →GET, POST
Cache-Control →no-cache, must-revalidate, max-age=0
Connection →keep-alive
Content-Type →application/json; charset=UTF-8
Date →Wed, 06 Apr 2016 13:57:19 GMT
Expires →Wed, 11 Jan 1984 05:00:00 GMT
Last-Modified →
Location →http://seebook.dev/wp-json/wp/v2/posts/25
Pragma →no-cache
Server →nginx
Transfer-Encoding →chunked
X-Content-Type-Options →nosniff
X-Powered-By →PHP/5.5.9-1ubuntu4.14
ご覧のとおり、ローカルでは「GET」と「POST」の両方が許可されていますが、サーバーでは「GET」のみが許可されています。
どこに問題があるのか わかりますか?