노드에서 전자 메일을 보내는 데 경험이 없으므로 선택할 수있는 옵션이 다릅니다. 다음 시나리오에서 어떤 옵션을 사용할 수 있습니까? sengrid와노드 - 전자 메일, sendgrid 및 nodemailer 중 하나를 보내거나 결합하는 옵션
사용하여 노드 메일 발송 :
내가 함께 일을 강제로 추가 패키지 "nodemailer-sendgrid-transport"
을 추가해야 볼 수 있듯이. var transporter = nodemailer.createTransport({ service: 'SendGrid', auth: {...});
이 작동하지 않으므로. nodemailer 패키지없이 단지 sendgrid 모듈을 사용 (항상 반환 잘못된 사용자 이름/암호)
var nodemailer = require('nodemailer'),
sendGridTransport = require('nodemailer-sendgrid-transport');
var options = {
auth: {
api_user: 'blabla',
api_key: 'blabla'
}
};
var client = nodemailer.createTransport(sendGridTransport(options));
var email = {
to: ['[email protected]', '[email protected]'],
from: '[email protected]',
subject: 'Hi there',
text: 'Awesome sauce',
html: '<b>Awesome sauce</b>'
};
client.sendMail(email, function(err, info) { ... });
: 그래서 두 번째 예와
var sendgrid = require('sendgrid')('blabla', 'blabla');
var email = {
to: ['[email protected]', '[email protected]'],
from: '[email protected]',
subject: 'Hi there',
text: 'Awesome sauce',
html: '<b>Awesome sauce</b>'
};
sendgrid.send(email, function(err, json) { ... });
내가 먼저 접근 한 패키지 (sengrid)를 포함 전 두 개의 패키지 (nodemailer 및 nodemailer-sendgrid-transport)를 포함해야합니다. 나는 첫 번째 접근법이 다른 어떤 서비스 전송 (예를 들어 gmail)으로 업데이트하거나 완전히 전환 할 수 있다는 점에서 두 번째보다 더 큰 추상화를 볼 수 있을까? 그러나 다른 한편으로는 다른 전송 객체간에 전환하는 것이 적절한 상황을 보지 못합니다.
부탁드립니다.이 모든 것은이 솔루션과 함께 템플릿을 사용하는 방법입니다. 나는 공식적인 가이드에서 템플릿에 대해서 아무것도 보지 않는다. https://github.com/sendgrid/sendgrid-nodejs도 아니다 : https://github.com/andris9/Nodemailer :
이메일 템플릿은 이것과 나는 그것을 다룰 새로운 패키지를 설치해야한다.
결국 나는 매우 지체 된 질문을 게시하는 것처럼 느낀다.