WordPress中的REST-API只允许“获取”

时间:2016-08-19 01:36:28

标签: json wordpress api http-post http-get

在我的WordPress方面,我安装了REST-API插件并成功获取帖子:

mywp.org/wp-json/wp/v2/posts

但是,只允许“获取”,如果我执行“发布”之类的任何其他操作,则返回401。我正在使用chrome app“Postman”和Basic Auth。

我得到了什么:

  "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
Allow →GET
Connection →Keep-Alive
Content-Length →111
Content-Type →application/json; charset=UTF-8

我发现了一个问题here,但答案对我不起作用。

我是rest-api的新手,不知道该怎么做。

三江源!

3 个答案:

答案 0 :(得分:2)

我自己找到了答案。因为我不小心错过了这部分"在WP"中安装Basic Auth plugin。在文档中。 安装并启用后,我能够发布"发布"和"删除"现在发帖。

答案 1 :(得分:0)

如果您在从Bitnami部署的WordPress实例上,并遇到类似以下错误:

  • woocommerce_rest_cannot_create”(“ Sorry, you are not allowed to create resources.”)
  • rest_cannot_create”("Sorry, you are not allowed to create posts as this user."
  • rest_cannot_create_user”(“ Sorry, you are not allowed to create new users”)

这是为我解决问题的原因:

  • 安装Basic Auth,您可以通过将存储库克隆到/opt/bitnami/apps/wordpress/htdocs/wp-content/plugins中来进行安装,也可以以zip格式下载该存储库,并从WP Admin中的插件页面中的文件中进行安装。
  • 编辑.htaccess中可用的/opt/bitnami/apps/wordpress/htdocs文件
  • RewriteEngine On下添加新行,并插入RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]保存并退出
  • 编辑/opt/bitnami/apps/wordpress/conf/httpd-app.confRewriteEngine On之后添加新行
  • 在新行中插入:RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]保存并退出
  • 重新启动Apache:sudo /opt/bitnami/ctlscript.sh restart apache
  • (可选)安装Application Passwords By George Stephanis

有关更多详细信息,请检查: https://community.bitnami.com/t/setting-up-api-access-to-wordpress-on-aws-ec2-instance/60589/7

答案 2 :(得分:0)

在使用WP API时,我遇到了同样的问题,并且通过在.htaccess文件中添加三行来解决了这个问题。

RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

您可以点击链接以获取更多详细信息。

More details to add lines in .htaccess