Post 多行卷曲命令

Post 多行卷曲命令,post,curl,request,http-post,Post,Curl,Request,Http Post,我正在尝试修改一个用谷歌Chrome开发工具捕获的curl请求 下面是命令的外观 curl "http://WEBSITE" -H "Host: WEBSITE" -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" -H "Accept-Language: en-US,en;q=0.5" --compressed -H "Content-Type: multipart/form-data; bo

我正在尝试修改一个用谷歌Chrome开发工具捕获的curl请求

下面是命令的外观

curl "http://WEBSITE" -H "Host: WEBSITE" -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" -H "Accept-Language: en-US,en;q=0.5" --compressed -H "Content-Type: multipart/form-data; boundary=---------------------------1184875127259" --data-binary "-----------------------------1184875127259"^

"Content-Disposition: form-data; name=""FORM1"""^

"FORM1DATA"^
"-----------------------------1184875127259"^

"Content-Disposition: form-data; name=""FORM2"""^

"FORM2DATA"^
"-----------------------------1184875127259"^

"Content-Disposition: form-data; name=""FORM3"""^

"FORM3DATA"^
"-----------------------------1184875127259"^

"Content-Disposition: form-data; name=""embed"""^

"true"^
"---------------------------1184875127259--"^
""
Form#
是表单的名称,
Form#Data
是我在表单中提交的数据


如何使这成为一个单行卷曲请求?我可以将其复制到命令行中,并让它执行与浏览器相同的操作?

使用
\
转义字符进行多行输入

curl "http://WEBSITE" -H "Host: WEBSITE"\
-H "Accept: text/html,application/xhtml+xml\
,application/xml;q=0.9,*/*;q=0.8" 
注意:注意多行命令上的缩进趋势, 因为它会嵌入空格并破坏curl命令。sed 命令将变量中的嵌入空格替换为%20 字符串,以便可以在传递为的字符串中嵌入空格 变数


如果您运行的是Windows,我发现安装Git和使用GitBash运行Curl更容易。这最初是在一篇单独的文章中提出的:.

相当于
\
的窗口是
^

@DirkSchumacher,而不是在Windows中使用\进行换行使用^。反斜杠是给macOs的。@saini arun:好提示!-)非常感谢。如果我的大脑里再多一点细胞就可以解决这个问题了。。。我只是想,如果我知道可以考虑环境问题,那么共享基本设置总是很好的。对于Windows,您可以按照上面的建议使用插入符号(^)。示例:curl-H“X-Auth-Token:9hqllyzougostsxxxcufd_0ydwnnunajf8v47u3qhxsq“^-H”X-User-Id:aobEdbYhXfu5hkeqG“^-H”内容类型:application/json“^-d”{“avatarUrl”:“}”^在Chrome开发工具中,以Postman期望的格式获取请求。“Copy as cURL(cmd)”使用包含^as行分隔符的格式,Postman将抛出一个错误,内容为:“导入cURL时出错:只能提供URL,前面没有选项。所有其他输入必须通过选项指定。”我同意!在Windows上,Git Bash是最棒的。
messageout="The rain in Spain stays mainly in the plains"
summaryout="This is a test record"
alertnameout="Test Alert"


curl -v -silent request POST "URL.com?\
summary=`echo $summaryout | sed -e 's/ /%20/g'`&\
alertname=`echo $alertnameout | sed -e 's/ /%20/g'`&\
message=`echo $messageout | sed -e 's/ /%20/g'`"