在用curl传递base64数据的时候提示“Argument list too long”错误,具体例如:
DATA=$( base64 "$FILE" ) curl -X POST -H "Content-Type: application/json" -d '{ "data": "'"$DATA"'" }' $HOST
解决办法,使用 “-d @-” 从标准输入中读入数据,而不是直接从命令行,具体例如:
curl -X POST -H "Content-Type: application/json" -d @- "$HOST" <<CURL_DATA { "data": "$DATA" } CURL_DATA
更换后问题解决,Curl没有再报“Argument list too long”的错误了。