如何在-d参数中使用curl.exe发送双引号char。我不想对双引号进行URL编码。由于-d数据需要用双引号括起来,我似乎无法使它工作。
或者是否有另一个curl.exe标志告诉它使用整个表单发布数据的文件内容?
答案 0 :(得分:34)
我的curl.exe
适用于此表单:
-d "{\"param\":\"value\"}"
即。双引号围绕数据,双引号用
中的反斜杠掩盖答案 1 :(得分:13)
你绝对可以逃避双引号。如何执行此操作取决于您未指定的操作系统和shell。在Windows上,您将使用^作为转义字符。
你也可以这样做:
curl [...] -d @filename
...从名为filename的文件中读取发布数据。
谷歌和/或男人是你的朋友。
答案 2 :(得分:5)
您可以使用单引号括起数据,并在里面使用双引号。
答案 3 :(得分:5)
为了逃避双引号问题,我发现双引号在shell中运行三倍:
curl -d {"""foo""":"""bar"""}
同时将双引号加倍在批处理文件中:
curl -d {""foo"":""bar""}
首先在shell中进行测试非常烦人。
答案 4 :(得分:-1)
有些东西叫做美元斜线字符串。
def cmd = $/ curl -d '{"param":"value"}' -X POST https://example.com/service /$
sh cmd