printf -v email_body "Click here: \e]8;;file://1.2.3.4/backup/backup.txt\e\Backup.txt\e]8;;\e\\"
当我在终端中显示它时,它可以很好地工作:
结果
当我尝试发送它时,它会失败,如它所说的Input must be a valid JSON object
::
curl --request POST \
--url https://api.brevo.com/v3/smtp/email \
--header 'accept: application/json' \
--header 'api-key: xxxxxxxxx' \
--header 'content-type: application/json' \
--data "${email_header}${email_body}${email_footer}"
其他一切都很好 - email_header和email_footer使其成为适当的json/html字符串 - 即,如果我删除email_body或在其中放置一个简单的字符串,它可以很好地工作。当我保存时,我可以看到记事本++看到逃生字符(预期): 特殊字符的屏幕示威 我试图逃脱这样的特殊角色:
email_body
不适合json.我想念什么?
对我来说很奇怪,试图通过shell脚本发送电子邮件。...不仅如此,通过REST API进行此操作。...毕竟,SMTP邮件服务器具有完美的API,可直接发送电子邮件。 这是通过Gmail直接发送电子邮件到SMTP服务器的示例。
printf -v email_body "Click here: \\e]8;;file://1.2.3.4/backup/backup.txt\\e\\Backup.txt\\e]8;;\\e\\\\"