1. 제품
  2.   이메일
  3.   Node.js
  4.   Nodemailer
 
  

오픈 소스 Nodd.js API를 통한 이메일 읽기 및 전송

고급 오픈 소스 Node.js 이메일 관리 API는 개발자가 Node.js 애플리케이션에서 첨부 파일 및 맞춤 헤더와 함께 이메일 메시지를 생성, 읽기, 맞춤 설정 및 전송할 수 있도록 합니다.

Nodemailer API란 무엇인가요?

Nodemailer를 발견하세요, Node.js 개발자를 위한 필수 이메일 전송 라이브러리입니다. 이 도구는 Node.js 개발자가 애플리케이션 내에서 몇 줄의 코드만으로 이메일 메시지를 생성하고 보낼 수 있도록 지원합니다. 오픈 소스 특성과 강력한 API 덕분에 이메일 기능을 원활하게 통합하려는 개발자들에게 인기 있는 선택이 됩니다. 소프트웨어 개발자는 외부 도움 없이도 이메일 내용을 광범위하게 커스터마이즈할 수 있습니다. 단순 텍스트 이메일부터 복잡한 HTML 템플릿(거래 이메일, 알림 또는 뉴스레터) 및 첨부 파일까지, 이 라이브러리는 전문적이고 매력적인 이메일을 만들기 위한 도구를 제공합니다. 보안을 강화하기 위해 OAuth2 인증을 지원합니다. 이 방법은 Gmail과 같이 OAuth2를 지원하는 서비스에서 이메일을 보낼 때 특히 유용합니다.

Nodemailer는 SMTP, OAuth2 및 직접 전송과 같은 다양한 전송 방식을 지원합니다. 이러한 유연성은 개발자가 특정 사용 사례에 가장 적합한 방식을 선택할 수 있도록 보장합니다. 광범위한 커스터마이징 옵션을 제공하며, 개발자는 사용자 정의 헤더 설정, 인코딩 수정, 첨부 파일 추가, 인라인 이미지 삽입 및 기타 매개변수를 조정하여 특정 요구 사항을 충족할 수 있습니다. 오픈 소스 프로젝트로서 API는 활발한 기여자와 사용자의 커뮤니티 혜택을 받습니다. 이 활발한 커뮤니티는 정기적인 업데이트, 지속적인 개선 및 풍부한 지식과 리소스를 공유합니다. Nodemailer는 Node.js 애플리케이션에서 이메일 통합을 위한 강력하고 유연하며 신뢰할 수 있는 솔루션으로 돋보입니다. 오픈 소스 특성과 강력한 커뮤니티 지원 덕분에 견고한 이메일 전송 기능을 강화하려는 개발자들에게 필수 도구가 됩니다.

Previous Next

Nodemailer 시작하기

Nodemailer를 설치하는 권장 방법은 NPM을 사용하는 것입니다. 원활한 설치를 위해 다음 명령을 사용하십시오.

npm을 통해 Nodemailer 설치

npm install nodemailer
 

Node.js에서 이메일 메시지 보내기

오픈 소스 Nodemailer 이메일 API는 소프트웨어 개발자가 외부 종속성 없이 Node.js 애플리케이션에서 이메일 메시지를 생성하고 보낼 수 있도록 합니다. 이 API는 다양한 전송 메커니즘을 지원하여 개발자가 이메일 전송에 가장 적합한 방법을 선택할 수 있게 합니다. 가장 일반적인 전송 방법에는 SMTP Transport, OAuth2 Support 또는 Direct Transport가 포함됩니다. 이메일에 첨부 파일을 추가하고, HTML 콘텐츠를 위한 이미지 첨부를 삽입하며, 여러 사용자에게 이메일을 보내는 등을 지원합니다. 다음은 소프트웨어 개발자가 SMTP 전송을 사용하여 Node.js 애플리케이션에서 이메일 메시지를 보내는 간단한 예시입니다.

Node.js 앱에서 SMTP 전송을 통해 이메일 메시지를 보내는 방법은?

 
const nodemailer = require('nodemailer');

// Configure the SMTP transport
let transporter = nodemailer.createTransport({
    host: 'smtp.example.com',
    port: 587,
    secure: false, // true for 465, false for other ports
    auth: {
        user: 'your-email@example.com', // your SMTP username
        pass: 'your-email-password' // your SMTP password
    }
});

// Define the email options
let mailOptions = {
    from: 'your-email@example.com', // sender address
    to: 'recipient@example.com', // list of receivers
    subject: 'Hello from Nodemailer', // Subject line
    text: 'This is a test email sent using Nodemailer', // plain text body
    html: 'This is a test email sent using Nodemailer' // html body
};

// Send the email
transporter.sendMail(mailOptions, (error, info) => {
    if (error) {
        return console.log('Error: ', error);
    }
    console.log('Message sent: %s', info.messageId);
    console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));
});
 

Node.js 앱에서 풍부한 콘텐츠로 이메일 보내기

Nodemailer API는 Node.js 애플리케이션 내에서 일반 텍스트와 HTML 형식을 모두 지원하는 풍부한 이메일 콘텐츠 생성을 가능하게 합니다. 이를 통해 소프트웨어 개발자는 스타일링, 이미지, 심지어 인터랙티브 콘텐츠를 포함할 수 있는 시각적으로 매력적인 이메일을 만들 수 있습니다. Handlebars나 EJS와 같은 템플릿 엔진과 API를 함께 사용하면 개발자는 동적이고 데이터 기반의 이메일 템플릿을 생성할 수 있습니다. 이는 사용자 데이터에 따라 콘텐츠가 맞춤형으로 변하는 개인화된 메시지를 보내기에 완벽합니다. API는 첨부 파일을 지원하여 PDF, 이미지 또는 기타 파일을 이메일과 함께 전송할 수 있게 합니다.

맞춤 헤더 및 삽입 이미지

고급 이메일 맞춤화를 위해 Nodemailer API는 소프트웨어 개발자가 Node.js 애플리케이션 내에서 사용자 정의 헤더와 임베드된 이미지를 포함할 수 있도록 합니다. 이 기능은 브랜딩 및 개인화에 특히 유용하며, 이메일이 애플리케이션의 디자인과 일치하도록 보장합니다. 사용자 정의 헤더는 이메일에 특정 메타데이터를 설정하는 데 사용할 수 있고, 임베드된 이미지는 인라인으로 이미지를 표시하여 이메일을 시각적으로 매력적으로 만들 수 있습니다. 아래는 사용자 정의 헤더와 임베드된 이미지를 포함한 이메일 전송을 보여주는 포괄적인 예시입니다.

Node.js API를 통해 사용자 정의 헤더와 삽입된 이미지를 포함한 이메일을 보내는 방법은?

 
const nodemailer = require('nodemailer');
const path = require('path');

// Create a transporter object using SMTP transport
let transporter = nodemailer.createTransport({
    service: 'gmail',
    auth: {
        user: 'your-email@gmail.com',
        pass: 'your-email-password'
    }
});

// Define the email options, including custom headers and an embedded image
let mailOptions = {
    from: 'your-email@gmail.com',
    to: 'recipient@example.com',
    subject: 'Custom Headers and Embedded Images in Nodemailer',
    html: `

환영합니다!

이 이메일에는 사용자 정의 헤더와 삽입된 이미지가 포함되어 있습니다.

`, headers: { 'X-Custom-Header': 'CustomHeaderValue', 'X-Mailer': 'Nodemailer 6.4.11' }, attachments: [ { filename: 'image.jpg', path: path.join(__dirname, 'path_to_image/image.jpg'), cid: 'unique@nodemailer.com' // same cid as in the HTML above } ] }; // Send the email transporter.sendMail(mailOptions, (error, info) => { if (error) { return console.error('Error sending email:', error); } console.log('Email sent successfully:', info.response); });
 한국인