我可以使用javascript发送电子邮件吗?

时间:2010-12-15 19:59:27

标签: javascript html email smtp smtpclient

是否可以使用javascript发送电子邮件?

6 个答案:

答案 0 :(得分:3)

是。使用网络服务。您可以对服务进行AJAX调用。 EmailYak就是这样一种服务(现在是私人测试版)。

修改 这仍然是服务器端解决方案,因为实际的电子邮件是从服务器发送的。您只是通过AJAX与服务器通信并告诉它发送电子邮件。

答案 1 :(得分:3)

构建SMTP client in Javascript实际上是可能的,而不是那么困难。

但是,SMTP客户端仍然需要与SMTP服务器通信以获取其电子邮件。现在,向所有人开放的SMTP服务器非常罕见(因为它们很快成为垃圾邮件管道,然后被阻止和/或关闭)。

但是,如果使用客户端的人可以为其提供SMTP服务器和用户凭据(就像使用任何其他通用电子邮件客户端一样),那么是的,您可以使用javascript发送电子邮件。

答案 2 :(得分:3)

编辑: [警告!]自述文件:

  

这是一个调用外部服务器的ThirdsParty库,请注意   与您发送的信息。

关于JS的另一个解决方案,您可以使用名为smtpjs

的库

在标题上添加以下库html:

<script src="https://smtpjs.com/smtp.js"></script>

使用此无安全性

Email.send("from@you.com",
"to@them.com",
"This is a subject",
"this is the body",
"smtp.yourisp.com",
"username",
"password");

将此与安全性

一起使用
Email.send("from@you.com",
"to@them.com",
"This is a subject",
"this is the body",
{token: "63cb3a19-2684-44fa-b76f-debf422d8b00"});

答案 3 :(得分:2)

您可以重定向到mailto:someone@example.com?cc=someone_else@example.com&subject=This%20is%20the%20subject&body=This%20is%20the%20body地址,该地址告诉浏览器启动邮件客户端,然后邮件准备发送 - 用户只需点击“提交”。

代码:

document.location="mailto:someone@example.com?cc=someone_else@example.com&"+
    "subject=This%20is%20the%20subject&body=This%20is%20the%20body";

答案 4 :(得分:1)

如果要从SMTP进程“静默”发送消息,则需要在服务器上或使用托管服务完成此操作。

如果您乐意使用用户的原生电子邮件程序,则可以使用described in this question等方法。

答案 5 :(得分:1)

请注意,smtpjs使用位于http://smtpjs的服务。它不是真正的Javascript SMTP客户端。这个&#34;实用程序&#34;表示您将电子邮件凭据上载到服务器smtpjs.com。 极其谨慎使用