Lambda에서 첨부파일이 있는 이메일 보내기
6612 단어 람다nodemailerAWSNode.js
Nodemailer란?
Node.js로 쉽게 메일을 보낼 수 있는 모듈입니다.
공식 h tps : // / 그래서 r. 코 m/아보 t/
npm 페이지 htps //w w. 음 pmjs. 코 m / Pac 가게 / 그래서 Mai r
하고 싶은 일
S3에 있는 PDF 파일을 첨부한 메일 보내기
절차
1. 이메일 주소 인증
샌드박스를 해제하기 전의 SES는 발신인 및 수신인에 지정하는 이메일 주소를 인증해야 합니다.
2. 필요한 권한 부여
3. 로컬에서 모듈 준비
mkdir test
npm init
npm install nodemailer
4. Lambda 콘솔 화면에서 zip 업로드
이번에 사용한 람다 코드
index.js
const AWS = require('aws-sdk')
const nodemailer = require('nodemailer')
const transporter = nodemailer.createTransport({
SES: new AWS.SES({ apiVersion: '2010-12-01' }),
})
const s3 = new AWS.S3({ apiVersion: '2006-03-01' })
const fs = require('fs').promises
exports.handler = async (event) => {
//S3に置いているPDFを/tmp配下にコピー
const paramsForS3 = {
Bucket: 'バケット名',
Key: 'ファイル名',
}
const contents = await s3.getObject(paramsForS3).promise()
const path = '/tmp/ファイル名'
await fs.writeFile(path, contents.Body)
// メール送信
await transporter.sendMail({
from: '差出人のメールアドレス',
to: '宛先のメールアドレス',
subject: 'メールの件名',
text: 'メール本文',
attachments: [
{
filename: '添付ファイル名', //元のファイル名とは別の名前で添付したい場合はここで設定(非必須項目)
path: path,
},
],
})
}
Reference
이 문제에 관하여(Lambda에서 첨부파일이 있는 이메일 보내기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/wdmmm/items/11ec72d2f2287e31e771텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)