【发布时间】:2018-02-27 21:55:17
【问题描述】:
我尝试使用 SES API 将附件作为 csv 文件的压缩内容发送。 csv 文件大小接近 3MB。我没有使用任何 SDK,而是使用 curl 和 API 端点从 bash shell 执行此操作。
代码有效,我也将 zip 作为附件放入我的邮箱。但是当我尝试下载相同的文件时,它告诉我文件已损坏或损坏。
$REPORTOUTFILE 是 csv 文件
在这方面需要您的帮助,因为我无法找到解决此问题的方法。
CURRENT_PATH=$(pwd)
zip $CURRENT_PATH/message.zip $REPORTOUTFILE
ATTACHMENT_CONTENTS=`zcat $CURRENT_PATH/message.zip`
ATTACHMENT_TEXT="stuck_order_report_tmp_$DATE.zip"
ATTACHMENT_CONTENTS_ENCODED="$(echo "$ATTACHMENT_CONTENTS" | base64)"
VALUE="To:"$TO"
Subject: Email with Attachment
Content-Type: multipart/mixed;
boundary="a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a"
--a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a
Content-Type: multipart/alternative;
boundary="sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a"
--sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable
--sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a
Content-Type: text/html; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable
Hello ! This is the text content for the email body.
--sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a--
--a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a
Content-Type: attachment/zip; name="$ATTACHMENT_TEXT"
Content-Description: "$ATTACHMENT_TEXT"
Content-Disposition: attachment;filename="$ATTACHMENT_TEXT";
Content-Transfer-Encoding: base64
$ATTACHMENT_CONTENTS_ENCODED
--a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a--"
MESSAGE="$(echo "$VALUE" | base64)"
echo "$MESSAGE" > $CURRENT_PATH/message_new.txt
message="RawMessage.Data=$MESSAGE"
echo "$message" > $CURRENT_PATH/message.txt
curl -v -X POST --trace "$CURRENT_PATH/trace.log" -H "Date: $date" -H "$auth_header" -H "$content_encoding" --data-binary "@$CURRENT_PATH/message.txt" --data-urlencode "$source" --data-urlencode "$action" "$endpoint"
【问题讨论】:
标签: amazon-web-services amazon-ses