我在nodejs中开发了一个Web应用程序,我提交了一个带有输入的表单并将其发送到电子邮件。我使用nodemailer将数据发送到电子邮件。这是我的app.js代码:
var smtpTransport = nodemailer.createTransport("SMTP",{
service: "Gmail",
auth: {
user: "email1@gmail.com",
pass: "password"
}
});
app.get('/api', function(req, res) {
var mailOptions = {
from: 'email1@gmail.com',
to: 'email1@gmail.com',
subject: 'Subjest',
text: 'test text'
};
console.log(mailOptions);
smtpTransport.sendMail(mailOptions, function(error, response){
if(error){
console.log(error);
res.end("error");
}else{
console.log("Message sent: " + response.message);
res.end("sent");
}
});
});
当我从笔记本电脑/电脑提交表格时它确实正常工作但如果我从移动设备提交(我从iphone查看),则提交按钮会重定向到电子邮件帐户(该帐户默认设置在设备的电子邮件应用中) )使用这样的查询字符串:
input1=testdata&input2=testdata&submit=submit
是否有任何建议从PC提交表单但是它被重定向到带有查询字符串的电子邮件帐户?提前致谢。
Nodemailer v0.7.1版, Node.js版本v4.6.0
更新
在客户方面,我<form action="mailto:email1@gmail.com"></form>
;如果我删除了action属性,那么我仍然可以从PC发送电子邮件但是从移动设备发送,这次我收到以下错误:
Cannot POST /abc.html