【发布时间】:2021-05-11 01:34:07
【问题描述】:
我的命令是:
curl -X POST --user "admin:admin" https://website.com/wp-json/wp/v2/posts/ -H "Content-Type: application/json" -d {"title":"test","content":"Content","status":"draft"}
我得到的回应:
{"code":"rest_invalid_json","message":"Invalid JSON body passed.","data":{"status":400,"json_error_code":4,"json_error_message":"Syntax error"}}
谢谢!
【问题讨论】:
-
是否需要在命令中使用单引号,比如:
'{"title":"test","content":"Content","status":"draft"}'?我使用this page 上出现的验证器检查了 json 本身,并且 json 本身是有效的。 -
从 curl 文档看来,
-d之后的数据可能需要包含某种引号,如 POST (HTTP) 部分所示。在这种情况下,由于您已经在 json 本身中使用了双引号,因此在 json 外部使用单引号可能会有所帮助。 -
我尝试在数据周围使用单引号和双引号,不会改变我得到的响应。
-
@D1EM4CH1N3 很遗憾听到您的回复没有改变。我在下面更新了我的答案,以分享我在自己的 WordPress 网站上尝试执行此类请求时发现的内容。我最终需要在 json 周围使用单引号,但我还需要为
--user凭据部分使用 应用程序密码。
标签: wordpress windows api curl