0x1 问题背景
在一次使用curl对图片的base64发送post请求时报错
/usr/bin/curl: Argument list too long
0x2 原因分析
简单的查了下,说是curl在命令行中传递base64内容就会这样,根本原因有兴趣再去了解
0x3 如何解决
- curl支持读取文件内容,所以把文件作为参数即可:
curl -X POST -d @filename.txt https://website.com/path
- 使用以下方式也可:
echo "{\"images\": [\"$data\"]}" | \ curl -H "Content-Type:application/json" -X POST --data @- -X POST 'https://website.com/path'