首页 / 知识

我可以使用JavaScript创建客户端电子邮件吗?

2023-04-11 23:59:00

我可以使用JavaScript创建客户端电子邮件吗?

Can I use JavaScript to create a client side email?

我想创建一个客户端邮件创建者网页。 我知道以html格式使用mailto操作的问题(不是标准的,在客户端上没有设置默认邮件应用程序)。 但是网页不是很重要,他们也不太在意。

mailto操作创建的邮件具有以下语法:

subject: undefined subject
body:

param1=value1
param2=value2
.
.
.
paramn=valuen

我可以使用JavaScript这样格式化邮件吗?

Subject:XXXXX

Body:
Value1;Value2;Value3...ValueN


我们在projet中使用的是一个弹出窗口,该弹出窗口打开mailto:链接,这是我们发现在与所有邮件客户端(至少使用的所有客户端)兼容的默认邮件客户端内编写邮件的唯一方法。

1
2
3
4
5
6
7
8
9
10
11
12
var addresses ="";//between the speech mark goes the receptient. Seperate addresses with a ;
var body =""//write the message text between the speech marks or put a variable in the place of the speech marks
var subject =""//between the speech marks goes the subject of the message
var href="mailto:" + addresses +"?"
         +"subject=" + subject +"&"
         +"body=" + body;
var wndMail;
wndMail = window.open(href,"_blank","scrollbars=yes,resizable=yes,width=10,height=10");
if(wndMail)
{
    wndMail.close();    
}

通过浏览器发送邮件时,您或多或少只有两种选择。

  • 创建一个页面,接受用户输入,并允许他们通过您的网络服务器发送邮件。为此,您需要某种服务器端脚本。
  • 使用mailto:链接触发打开用户注册的邮件客户端。这具有您提到的明显陷阱,灵活性较差。虽然它需要更少的工作。

  • 仅使用javascript,是不可能的。
    Javascript并非旨在执行此类操作,并且与它所驻留的Web浏览器以外的其他任何东西进行交互的方式都受到严重损害(有充分的理由!)。

    想想看:垃圾邮件发送者使用客户端javascript编写网站,该网站将自动发送到数千个随机电子邮件地址。如果人们应该去那个站点,他们都将使用自己的计算机参加分布式的大规模邮件骗局……不需要感染或用户交互!


    您可以创建一个mailto-link并使用javascript触发它:

    1
    2
    3
    4
      var mail ="mailto:buddy@mail.com?subject=New Mail&body=Mail text body";  
      var mlink = document.createElement('a');
      mlink.setAttribute('href', mail);
      mlink.click();

    您是否有理由不能仅将数据发送到处理邮件的页面?使用大多数语言发送电子邮件非常容易,因此,除非有充分的理由将其发送到客户端,否则我建议使用该路由。


    客户端电子邮件邮件网页

    最新内容

    猜你喜欢