用javascript和flash从浏览器发送电子邮件.这可能吗?

Sending an email from the browser with javascript and flash... is it possible?

本文关键字:电子邮件 javascript flash 浏览器      更新时间:2023-09-26

我想知道是否有可能做我在想什么,如果是可能的,有人知道一个flash对象做什么我需要?

我知道一个Flash对象可以提供一个javascript API与它进行交互,我不知道的是Flash可以直接发送电子邮件而不需要与web服务器交谈吗?如果这是可能的,是不是可以写一个flash对象,什么都不做,但提供一个API发送电子邮件?这样的东西已经被创造出来供其他人使用了吗?

我想在一个网页上创建一个电子邮件表单,但该网站是静态的(没有服务器脚本)。在我的情况下,服务器脚本是不可能的,因为没有服务器,该网站是100%的客户端CD/DVD/u盘。

不行,flash和JS都是客户端技术。您需要创建一个服务器端脚本来发送电子邮件,然后从您的客户端请求它。

无论swf文件是在u盘上还是在其他地方,您仍然可以连接到服务器。大多数网络主机支持php,所以这可能是最简单的方法。看看这个谷歌搜索

编辑:如果你不能使用服务器,那么你可以使用mailto链接,这将打开用户默认的电子邮件客户端

var mailto:String = "mailto:email@example.com";
navigateToURL(new URLRequest(mailto), "_blank");

还可以添加主题和正文。语法参见http://www.ianr.unl.edu/internet/mailto.html

是的,这是可能的使用flash,虽然我自己没有这样做,我不建议这样做。一般策略是使用套接字连接到特定的邮件服务器。

    服务器需要在端口843上有一个"套接字策略文件"。更多信息请参见http://www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html。它将允许连接到邮件中继所选择的端口(例如25)。然后,您可以使用flash Socket库来创建telnet客户端。见http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7cf7.html
  1. 将您的电子邮件构造为套接字的有效负载,并发送它。见http://www.yuki-onna.co.uk/email/smtp.html

当然,如果你把这些cd分发到全世界,你的邮件服务器套接字策略将不得不接受来自任何机器上任何人的连接,你将运行一个开放的邮件中继,混乱将随之而来,狗和猫生活在一起…

现在你不太可能找到一个公共SMTP服务器允许你这样做,如果你真的没有访问任何服务器端(没有web服务器,没有控制任何SMTP服务器),那么你需要依赖于客户端mailto:链接来代替。

由于它在用户计算机上的CD上运行,而您没有服务器,因此最好(唯一?)的选择是运行用户自己的邮件客户端。

尝试用JavaScript动态创建一个mailto链接,然后单击它。它应该用您指定的输入运行本地邮件客户端(Outlook、Thunderbird等)。用户必须自己点击"发送"

如果没有互联网连接,你就不能发送电子邮件,无论你使用JavaScript, Flash还是其他任何东西。

编辑:http://code.google.com/p/smtpmailer/这是用ActionScript写的,可能适合你的需要。

http://flashflex.com/sending-mail-in-actionscript-using-smtp/这是一些背景信息。