我可以使用HTML5发送客户端电子邮件吗?

Gus*_*Gus 7 javascript email html5 client-side

我想用HTML5发送电子邮件.我不想强迫用户打开邮件客户端,我想直接从网页发送电子邮件.

另外,在JavaScript中有什么办法可以做到这一点吗?我知道这可能是不可能的,只是想知道是否有任何狡猾的方法可以完全通过客户端完成它.

Mar*_*p51 13

总之,不是直接来自客户端(不包括黑客).

您可以对服务器进行ajax调用并发送电子邮件.

从客户端执行而不使用邮件客户端的问题很复杂.例如,大多数消费者ISP都有自己的SMTP中继,必须传输端口25上的所有出站邮件.您的网站无法获得正确的信息来执行此操作.其次,webbrowser不理解SMTP协议,XMLHttpRequest对象也不理解.

所以,如果你是一个黑客忍者,也许你可以想办法的使用ActiveX,Java小程序,或闪光灯,但你基本上就必须直接与TCP套接字操作并在该套接字发出SMTP协议命令.

有许多障碍需要克服,其实我也不知道该怎么做,但那里是将有一种方法.不要惊讶的是,如果你发现黑客攻击,它可能会被主要的浏览器供应商迅速插入.


JTe*_*Tew 8

对的,这是可能的.但不实用**见编辑2

一些HTML5实现包括对websockets的支持,实质上是与服务器的tcp连接.覆盖一些send/recv代码,您可以构建一个SMTP客户端.

事实上,看起来像nodejs和websocket支持已经用于实现smtp客户端...请看这里...

您仍然需要一个smtp服务器,用户名,密码等,就像标准的smtp客户端一样,以便它可以工作.

由于您的smtp提供商可以轻松取消您的帐户,因此不太可能使用此方法处理垃圾邮件.

===编辑===

实际上,你可以构建一个服务器较少的版本,它还必须实现名称服务器查找以查找mx记录.但是,任何体面的SMTP服务器都可能维护垃圾邮件列表黑名单表,并且从随机IP地址连接会看到通常标记为垃圾邮件的电子邮件.

与需要安全邮件连接的smtp服务器交谈也很困难.

正如其他人所提到的,这种实现有恶意用途,比如发送垃圾邮件.我想你有可能成为一个HTML5僵尸网络创建者,但我想你已经知道大部分已经:)

===编辑2 ===

正如Mark At Ramp51所述,websockets需要Handshaking.这是我不知道的事情.您必须破解websocket实现以绕过握手.

正确的方法是让Web服务器转发电子邮件.

  • 不,不要浪费你的时间.您提出的任何解决方案都将被浏览器供应商关闭,这些解决方案供应商会堵塞您找到的漏洞,您只需要找到绕过系统的另一种方法.如果作业太难以使用错误的工具,请找到合适的工具. (3认同)