将ASP.NET SendGrid调用转换为JavaScript?

时间:2013-06-17 05:36:03

标签: javascript asp.net .net sendgrid

请考虑以下ASP.NET示例,以使用SendGrid发送电子邮件。有没有办法在JavaScript中编写等效代码?

    @{
       string message = "";
        if (IsPost) {
            var c = new System.Net.Mail.SmtpClient();
            c.Send("from@domain.com", "email@domain.com", "subject", "body");   
        }
    } 

谢谢。

2 个答案:

答案 0 :(得分:0)

是的,这绝对是可能的。 SendGrid有一个node.js模块,可以让你从javascript发送电子邮件。您可以在githubnpm上找到它。

等效代码示例为:

var SendGrid = require('sendgrid')
  , sg = new SendGrid('your_sendgrid_username', 'your_sendgrid_password');

sg.send({
  to: "email@domain.com",
  from: "from@domain.com", 
  subject: "subject", 
  html: "body"
}, function(succ, msg) {
  if(!succ) throw new Error(msg);
});

答案 1 :(得分:-1)

不,不幸的是,javascript没有创建SMTP / IMAP请求所需的TCP / IP访问权限。即使它确实存在其他问题,例如客户端电子邮件应用程序的安全性,可能使用您的凭据发送垃圾邮件等。

实现接近你所追求的东西的最好方法是将AJAX请求发送到处理请求并发送电子邮件的服务器,主要是使用你拥有的代码但是从javascript触发它。您可以阅读有关JQuery的AJAX here的更多信息(因为这是.net我假设您想要使用熟悉的框架)。

此问题可能与以下内容重复:Javascript IMAP and SMTP client?