1

我正在尝试在我的 Wordpress 4.3.1 网站上使用 cUrl 创建一个新帖子,其中包含以下插件:

我已将以下代码添加到我的 htaccess.conf 文件中,因为该线程告诉我 <IfModule !php5_module> Define USE_PHP_FPM RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] </IfModule>

在命令行中输入: curl --data-binary "@updated-post.json" -H "Content-Type: application/javascript" --user "my_admin_user_name":"my_admin_password" http://www.mysite.nu/wp-json/wp/v2/posts

updated-post.json 的内容: { "title": "Hello Updated World!", "content_raw": "<p>Howdy updated content.<\/p>", "date": "2013-04-01T14:00:00+10:00" }

错误代码: [{"code":"rest_forbidden","message":"You don't have permission to do this.","data":{"status":403}}]

GET 请求确实有效。一些帮助将不胜感激!

4

1 回答 1

1

我发现问题出在 Basic Auth 插件中。WP-API 的人推荐使用他们自己的插件,这个解决方案对我有用。

  1. 停用 WordPress 仪表板中所有已激活的基本身份验证插件
  2. 在您运行 WordPress 的机器上,转到插件文件夹
  3. git clone https://github.com/WP-API/Basic-Auth.git

  4. 转到您的 WordPress 管理仪表板、插件页面。JSON 基本身份验证应该在列表中。激活它。

现在通过 POST 请求创建记录应该可以了。

于 2015-11-11T15:08:45.923 回答