繁体   English   中英

是否可以仅使用Javascript发送电子邮件而不必单击电子邮件客户端上的“发送”按钮?

[英]Can I Send an Email using ONLY Javascript Without Having to Click The Send Button on the Email Client?

我用HTML创建了一个表单,当单击“ 提交”按钮时, onclick事件将调用以下函数:

function ProcessSubmition(){

   var stringEmailBody=BuildEmailBody();

   var stringTo=document.getElementById("SubmittersEmail").value;

   var stringSubject = "My Subject Text";

   window.location.href = "mailto:"+stringTo+"?subject="+stringSubject+"&body="+stringEmailBody;

}

我的项目有两个要求:

  1. 我们的服务器上不允许使用PHP。
  2. 填写表格的人必须不能编辑包含计算价格的数据。

问题:

该功能启动时,将出现邮件客户端窗口,并显示该功能构造的消息,用户必须单击邮件客户端窗口中的“发送”按钮。
不幸的是,在用户单击发送之前,他们可以简单地将计算出的价格更改为较低的美元金额,这显然是不可接受的。

有什么方法可以隐藏邮件客户端窗口并自动发送? 或者,还有其他方法可以用来解决问题吗?

谢谢您能给我的任何帮助。

简短答案:

在浏览器的上下文中运行的JavaScript代码是可由最终用户操纵的客户端代码。 因此,您永远不应依赖客户端代码来执行任何敏感操作。

基本上,您将需要一些服务器端支持来完成您打算实现的目标,否则它将永远是不安全的。 现在,如果危险的是用户可以篡改您的代码,那么如果您的代码可以执行诸如代表他们未经任何形式的批准发送电子邮件之类的任务,对他们来说也是危险的。

即使您可以按照要求直接与邮件客户端对话并自动发送电子邮件,也不会阻止用户编辑用于生成消息并更改消息内容的JavaScript源。

另类? 如果您永远无法使用任何服务器端技术,也许您可​​以只通过电子邮件发送表单详细信息,然后在另一个过程中进行定价计算。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM