我在wordpress.com中有一个wordpress.com站点,它支持REST。我可以通过列出博客文章向/wp-json/wp/v2/posts
发出GET请求来测试API,但是创建或修改POST的post请求都返回401。例如:
$ curl --user "flexpointtechunbreach:{application_password}" -X POST -d "title=New Title" https://testbed.flexpoint.tech/wp-json/wp/v2/posts
{"code":"rest_cannot_create","message":"Sorry, you are not allowed to create posts as this user.","data":{"status":401}}
$ curl --user "flexpointtechunbreach:{application_password}" -X POST -d "title=New Title" https://testbed.flexpoint.tech/wp-json/wp/v2/posts/8
{"code":"rest_cannot_edit","message":"Sorry, you are not allowed to edit this post.","data":{"status":401}}
flexpointtechunbreach
是我创建并添加到具有编辑器角色的站点的用户:
我三次检查应用程序密码是正确的,生成了一个新的以防万一,并尝试了。
那个职位,编号8,由用户flexpointtechunbreach
创建:
我请求了wordpress.com的客户支持,他们告诉我,WordPress站点上的一切似乎都是正确的。
我正在编写一个与API交互的程序。在那里,我尝试了许多不同的参数,添加了app_name
、app_id
、正确或错误的凭据,但都没有效果。
还有什么别的办法吗?
发布于 2022-07-31 10:04:13
我发现了问题。WordPress.com有两个不同的应用程序密码。在2FA设置页面中的一个是错误的,这就是我设置的那个。要设置正确的选项,您需要转到/wp/profile.php。一旦我这么做了,这段代码就开始工作了。
我写了一篇博文,其中包含了关于所有移动部件的详细信息,以防您需要更多的详细信息:https://pablofernandez.tech/2022/07/31/creating-blog-posts-in-wordpress-com-programatically/
https://wordpress.stackexchange.com/questions/407971
复制相似问题