curl:参数列表太长
curl: argument list too long
我想通过 Sparkpost API 和 curl post.
发送一封附有 pdf 文件的电子邮件
要插入我使用的 pdf(我的 test.pdf 是 ~ 200KB)
"data":"'$(cat test.pdf} | base64 --wrap=0)'"
但是不知何故这并没有解决,显示了以下错误:
/usr/bin/curl: Die Argumentliste ist zu lang (original)
/usr/bin/curl: Argument list is too long
编辑:
curl 命令
curl -X POST https://api.eu.sparkpost.com/api/v1/transmissions -H 'Authorization: <APIKEY>' -H 'Content-Type: application/json' -d '{
"options":{
"open_tracking":false,
"click_tracking":false,
"inline_css":false
},
"recipients":[
{
"address":{
"email":"user@domain.tld",
"name":"user"
}
}
],
"content":{
"from":{
"name":"sender",
"email":"sender@domain.tld"
},
"reply_to":"replyto@domain.tld",
"subject":"subject",
"text":"textbody",
"attachments":[
{
"name":"attachmentname.pdf",
"type":"application/pdf",
"data":"'$(cat test.pdf | base64 --wrap=0)'"
}
]
}
}'
出现这种情况是因为您正试图在命令行上传递全部 base64 内容。 curl
能够从文件中将数据加载到 POST,我建议这样做。更多信息可以在the man page中找到,但基本格式是这样的:
curl -X POST -d @filename.txt https://website.com/path
根据 curl 手册,-F 选项允许您将文件编码为 base64,但将输出限制为 76 个字符。
前任:
-F '=@localfile;encoder=base64'
我想通过 Sparkpost API 和 curl post.
发送一封附有 pdf 文件的电子邮件要插入我使用的 pdf(我的 test.pdf 是 ~ 200KB)
"data":"'$(cat test.pdf} | base64 --wrap=0)'"
但是不知何故这并没有解决,显示了以下错误:
/usr/bin/curl: Die Argumentliste ist zu lang (original)
/usr/bin/curl: Argument list is too long
编辑: curl 命令
curl -X POST https://api.eu.sparkpost.com/api/v1/transmissions -H 'Authorization: <APIKEY>' -H 'Content-Type: application/json' -d '{
"options":{
"open_tracking":false,
"click_tracking":false,
"inline_css":false
},
"recipients":[
{
"address":{
"email":"user@domain.tld",
"name":"user"
}
}
],
"content":{
"from":{
"name":"sender",
"email":"sender@domain.tld"
},
"reply_to":"replyto@domain.tld",
"subject":"subject",
"text":"textbody",
"attachments":[
{
"name":"attachmentname.pdf",
"type":"application/pdf",
"data":"'$(cat test.pdf | base64 --wrap=0)'"
}
]
}
}'
出现这种情况是因为您正试图在命令行上传递全部 base64 内容。 curl
能够从文件中将数据加载到 POST,我建议这样做。更多信息可以在the man page中找到,但基本格式是这样的:
curl -X POST -d @filename.txt https://website.com/path
根据 curl 手册,-F 选项允许您将文件编码为 base64,但将输出限制为 76 个字符。 前任: -F '=@localfile;encoder=base64'