技术解析

关于 curl 命令提交带有空格的内容。
0
2021-06-16 12:39:38
idczone

请教一下,我用 curl -d 提交内容到企业微信机器人。内容有引用变量,变量值里面带有空格。使用 curl 提交会报错。请问这个有什么好的解决方法。


只看你说的这些,我只能回答:根据报错信息对应修改了。
如果多贴点信息的话可能更好地帮助你。

%20?

学习 shell 的引号 escape?

是的可以用%20 替换空格部分,但是因为是通过变量获取到的内容。。这个要怎么替换呢

是什么语言,找对应的 urlencode 方法。

加引号

> man curl
--data-urlencode
(HTTP) This posts data, similar to the other -d, --data options with the exception that this performs URL-encoding.

处理过类似的
"content": "'"$1"'"
用引号包裹内容

谢谢,你的方法可以。

> curl -s --data-urlencode "a=& &" "b=$your" https://httpbin.org/post
{
"form": {
"a": "& &"
}
"headers": {
"Content-Type": "application/x-www-form-urlencoded"
}
}
你可以换到 `-d` 看看区别,(如果你的内容包含&等特殊字符的话

fix 少打了一个
curl -s --data-urlencode "a=& &" --data-urlencode "b=$your" url


最近又试了另一个方式 也是可以的

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服