我对此感到抓狂。我正在尝试以下操作:
curl -S https/api.bitbucket.org/2.0/repositories/etc/etc/pullrequests/comments \
-u username:pw
--request POST --header 'Content-Type: application/json' \
-d '{"content": {"text": "'"$logMsg"'"}}'
Run Code Online (Sandbox Code Playgroud)
即使使用 -S 也会返回一个不明确的错误请求。$logMsg 有大量特殊字符和换行符,其示例如下:
"\n\n***HelloThere** <->:+/"
Run Code Online (Sandbox Code Playgroud)
请注意,无论变量是什么,都应该用双引号引起来。我不知道 bash 是如何解释该变量的,因为将字符串文字复制并粘贴到邮递员中效果很好。例子:
--data-raw '{"content": { "raw": "\n\n***HelloThere**<->:+/"}}'
Run Code Online (Sandbox Code Playgroud)
我有一种感觉,正在进行一些字符串插值(即将 \n 转换为实际的换行符),但我不确定如何解决。