Pessoal Bom dia. Preciso encarecidamente de ajuda com o código para aviso de e-mail com send grid.
Já tenho o código todo pronto, back-end com os módulos ok. Já tenho o cadastro no sendgrid, já tenho chave gerada, já configurada no código e etc... Mas o email não chega. Por favor me ajudem!!!!
Postar aqui os codigos ja no meu site.
No Backend
//email.jsw
import {sendWithService} from 'backend/sendGrid';
export function sendEmail(subject, body) {
const key = "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";
const sender = "christianolc@hotmail.com";
const recipient = "christianolc@hotmail.com";
return sendWithService(key, sender, recipient, subject, body);
}
export function sendEmailWithRecipient(subject, body, recipient) {
const key = "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";
const sender = "christianolc@hotmail.com";
return sendWithService(key, sender, recipient, subject, body);
}
//sendGrid.js
import {fetch} from 'wix-fetch';
export function sendWithService(key, sender, recipient, subject, body) {
const url = "https://api.sendgrid.com/api/mail.send.json";
const headers = {
"Authorization": "Bearer " + key,
"Content-Type": "application/x-www-form-urlencoded"
};
const data = `from=${sender}&to=${recipient}&subject=${subject}&text=${body}`;
const request = {
"method": "post",
"headers": headers,
"body": data
};
return fetch(url, request)
.then(response => response.json());
}
Na Pagina
import {sendEmailWithRecipient} from 'backend/email';
$w.onReady(function () {
$w("#dataset2").onAfterSave(sendFormData);
});
function sendFormData() {
const subject = `Novo contrato de locação cliente $w("#input1").value`;
const body = `O formulário de locação foi autorizado eletronicamente por: $w("#input1").value
\rNome Completo: $w("#input1").value
\rRG: $w("#input2").value
\rCPF: $w("#input3").value
\rEstado Civil: $w("#input4").value
\rProfissão: $w("#input5").value
\rEmail: $w("#input6").value
\rEndereço: $w("#input7").value
\rNumero: $w("#input8").value
\rComplemento: $w("#input9").value
\rBairro: $w("#input11").value
\rCidade: $w("#input10").value
\rEstado: $w("#input12").value
\rCEP: $w("#input13").value
\rApartamento ou ApartHotel: $w("#apartamentodropdown").value
\rValor Total: $w("#input14").value
\rForma de pagamento: $w("#dropdown2").value
\rParcelamento: $w("#dropdown3").value
\rDuração: $w("#input15").value
\rData de checkin: $w("#datePicker1").value
\rData de checkout: $w("#datePicker2").value
\rAceito de termos e condições: $w("#checkbox1").value `;
const recipient = $w("#input6").value;
sendEmailWithRecipient(subject, body, recipient)
.then(response => console.log(response));
}
por favor me ajudem. se tem algo Errado
Obrigado Matheus, aqui nao indica nenhum problema. nao funciona mesmo. e eu já cansei te tentar. estou usando agora um formulário de terceiros em HTMl, e está dando certo.
o código chave do sendgrid postado não funciona pós foi deletado lá.
obrigado .
ps. Caso faço o serviço extra por favor me procure
Oi @Christiano Cavalcante.
Seu editor ou console indica algum error? seu código parece correto. Sugiro que você apague sua chave do código comentado no post.