Sendgrid-nodejs: Envie um único e-mail para um único destinatário

Criado em 6 out. 2016  ·  4Comentários  ·  Fonte: sendgrid/sendgrid-nodejs

Critérios de aceitação:

  • Um objeto de e-mail que representa a carga útil do corpo da resposta
  • Um objeto de e-mail que lida com o envio de objetos de e-mail, validação de dados e tratamento de erros

Referência:

hacktoberfest help wanted community enhancement

Comentários muito úteis

Olá Pablo,

Primeiro, eu sugiro que você reveja todo o "Mail Helper Enhancement (v3 mail / envio)" projeto .

Queremos refatorar o auxiliar de correio para que ele torne a execução dos casos de uso definidos neste projeto o mais simples possível.

Por exemplo, agora nosso hello world para enviar um único e-mail tem a seguinte aparência:

var helper = require('sendgrid').mail;
var from_email = new helper.Email('[email protected]');
var to_email = new helper.Email('[email protected]');
var subject = 'Hello World from the SendGrid Node.js Library!';
var content = new helper.Content('text/plain', 'Hello, Email!');
var mail = new helper.Mail(from_email, subject, to_email, content);

var sg = require('sendgrid')(process.env.SENDGRID_API_KEY);
var request = sg.emptyRequest({
  method: 'POST',
  path: '/v3/mail/send',
  body: mail.toJSON(),
});

sg.API(request, function(error, response) {
  console.log(response.statusCode);
  console.log(response.body);
  console.log(response.headers);
});

Uma maneira de melhorar isso poderia ser:

var mail = require('sendgrid').mail;
mail.AddFromEmail('[email protected]');
mail.AddToEmail('[email protected]');
mail.AddSubject('Hello World from the SendGrid Node.js Library!');
mail.AddContent('text/plain', 'Hello Email!');

var sendgrid = require('sendgrid')(process.env.SENDGRID_API_KEY);
sendgrid.send(mail, function(error, response) {
  if(error) {
      console.log(error.message);
      console.log(error.response.statusCode);
      console.log(error.response.body);
      console.log(error.response.headers);
  } else {
    console.log(response);
  }
});

Todos 4 comentários

Olá, @thinkingserious!

Tentando encontrar meu quarto PR para o #hacktoberfest deste ano, vi aqueles pins exclusivos e gostaria de dar uma chance.

Como nunca usei o Sendgrid antes, estou um pouco perdido sobre por onde começar e entender o problema. É sobre como estender o auxiliar de correio? Documentando como enviar um único e-mail? Eu adoraria alguns esclarecimentos.

Saúde, Pablo.

Olá Pablo,

Primeiro, eu sugiro que você reveja todo o "Mail Helper Enhancement (v3 mail / envio)" projeto .

Queremos refatorar o auxiliar de correio para que ele torne a execução dos casos de uso definidos neste projeto o mais simples possível.

Por exemplo, agora nosso hello world para enviar um único e-mail tem a seguinte aparência:

var helper = require('sendgrid').mail;
var from_email = new helper.Email('[email protected]');
var to_email = new helper.Email('[email protected]');
var subject = 'Hello World from the SendGrid Node.js Library!';
var content = new helper.Content('text/plain', 'Hello, Email!');
var mail = new helper.Mail(from_email, subject, to_email, content);

var sg = require('sendgrid')(process.env.SENDGRID_API_KEY);
var request = sg.emptyRequest({
  method: 'POST',
  path: '/v3/mail/send',
  body: mail.toJSON(),
});

sg.API(request, function(error, response) {
  console.log(response.statusCode);
  console.log(response.body);
  console.log(response.headers);
});

Uma maneira de melhorar isso poderia ser:

var mail = require('sendgrid').mail;
mail.AddFromEmail('[email protected]');
mail.AddToEmail('[email protected]');
mail.AddSubject('Hello World from the SendGrid Node.js Library!');
mail.AddContent('text/plain', 'Hello Email!');

var sendgrid = require('sendgrid')(process.env.SENDGRID_API_KEY);
sendgrid.send(mail, function(error, response) {
  if(error) {
      console.log(error.message);
      console.log(error.response.statusCode);
      console.log(error.response.body);
      console.log(error.response.headers);
  } else {
    console.log(response);
  }
});

Ok, então é um refatorador completo. Vou tentar encontrar algum tempo para tentar.

Em andamento aqui: # 378

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

mikemaccana picture mikemaccana  ·  4Comentários

kiranshashiny picture kiranshashiny  ·  4Comentários

prasoonjalan picture prasoonjalan  ·  3Comentários

Chrischuck picture Chrischuck  ·  3Comentários

agostonbonomi picture agostonbonomi  ·  3Comentários