使用Curl给GitLab合并请求提交评论时报错body is missing如何解决
这个报错的核心原因是发送JSON格式请求时没有指定对应的Content-Type头,GitLab服务端无法识别你传入的是JSON载荷,因此解析不到body字段。
修复方案
在请求头中添加Content-Type: application/json即可,修正后的curl命令如下:
curl --request POST \ --header "Private-Token: askljdhakjdlsa" \ --header "Content-Type: application/json" \ http://10.10.10.10/api/v4/projects/9/merge_requests/67/notes \ --data '{ "body": "Comment test" }'
其他注意事项
- 如果你在Windows系统下执行curl命令,系统不会自动识别单引号包裹的参数,需要把外层单引号替换为双引号,内部的双引号加反斜杠转义,示例:
curl --request POST --header "Private-Token: askljdhakjdlsa" --header "Content-Type: application/json" http://10.10.10.10/api/v4/projects/9/merge_requests/67/notes --data "{ \"body\": \"Comment test\" }"
- 确认你的私有令牌拥有对应项目的合并请求编辑权限,避免后续出现权限类报错。
内容的提问来源于stack exchange,提问作者user630702
相关产品推荐
相关产品推荐

