我有由html5建立的网站,并由阿帕奇服务,我已经在同一服务器上安装了Nodejs。
我想在每次访问html页面时使用node mail发送电子邮件,如何使html页面触发Nodejs文件/程序或模块?
我只是不知道HTML页面如何与服务器上的Nodejs程序交互
发布于 2012-02-07 02:03:10
您可以使用Ajax技术。
使用ajax,您可以请求一个http请求来触发您的节点服务器执行邮件递送。
套件
发布于 2012-02-07 07:06:33
Nodejs是一种服务器端技术。如果使用PHP或Rails,你会怎么做?原则上是一样的。
例如,您可以公开一个REST API来调用服务器并发送一封邮件,然后可以从客户端的javascript调用该邮件。
发布于 2012-02-12 16:37:06
Apache和Node作为两个不同的服务器和两个不同的进程运行。
正如其他人所描述的,您可以使用客户端ajax在两个服务器之间触发操作。您可以使用dnode之类的东西在两个服务器之间提供RPC (远程过程调用)。如https://github.com/substack/dnode There are dnode implementations for perl, ruby, php, and java, so you can glue together all your backend processes swimmingly.
上所述
在同一台服务器上,您可以创建一个新进程。例如,使用PHP,您可以使用system
或popen
调用节点。即。system("node mail.js [args]")
。一定要小心地避开你的争论。下面是一个流行的例子:http://svn.php.net/viewvc/pear/packages/Mail/trunk/Mail/sendmail.php?view=markup
注意:我不确定与在apache堆栈中使用标准实现相比,使用节点邮件有什么优势(即。使用PHPjust调用mail()
)。如果您正在寻找非阻塞,在大多数情况下都有可用的选项:Send mail without blocking 'execution'
https://stackoverflow.com/questions/9170049
复制相似问题