[英]How do I construct a JSON message to send with Amazon-SES?
當我嘗試通過 Amazon-SES 發送 email 時遇到以下錯誤:
Error parsing parameter '--raw-message': Invalid JSON: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
我不明白我在哪里弄亂了 JSON 消息...
這是我正在使用的 bash 腳本:
echo '{\"Data\":
"Subject:'${SUBJECT}'\\n
MIME-Version: 1.0\n
Content-type: Multipart/Mixed;
boundary=\"NextPart\"\\n\\n--NextPart\\n
Content-Type: text/plain\\n\\n'${BODY}'
\\n\\n--NextPart
\\nContent-Type:'${ATTACHMENT_TYPE}';
\nContent-Disposition: attachment;
filename=\"'${ATTACHMENT_FILE_NAME}'\"\\n
\\n'$(cat ./${ATTACHMENT_FILE_TO_READ_FROM_DISK})'
\\n--NextPart--"}' > "$tmp_message"
aws ses send-raw-email --region us-east-1 --from sender@gmail.com --destination file://$tmp_destination --raw-message file://"$tmp_message"
使用jq
驗證你的json沒問題
#! /bin/bash
echo '{\"Data\":
"Subject:'${SUBJECT}'\\n
MIME-Version: 1.0\n
Content-type: Multipart/Mixed;
boundary=\"NextPart\"\\n\\n--NextPart\\n
Content-Type: text/plain\\n\\n'${BODY}'
\\n\\n--NextPart
\\nContent-Type:'${ATTACHMENT_TYPE}';
\nContent-Disposition: attachment;
filename=\"'${ATTACHMENT_FILE_NAME}'\"\\n
\\n'$(cat ./${ATTACHMENT_FILE_TO_READ_FROM_DISK})'
\\n--NextPart--"}' > "$tmp_message"
if jq < "$tmp_message"; then
aws ses send-raw-email --region us-east-1 --from sender@gmail.com --destination file://"$tmp_destination" --raw-message file://"$tmp_message"
else
echo "ERROR" >&2
fi
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.