以下是我尝试使用 POST 方法从 AngularJS 发送到 NodeJS 的发布数据:
$scope.doStuff = function(foo, bar) {
$http({method: 'post', url: '/send', data: {foo: foo, bar: bar}}).
success(function(data, status, headers, config) {
console.log(data);
});
};
下面是我如何使用 NodeJS 在服务器端接收数据:
router.post('/send',function(req,res){
var transporter = nodemailer.createTransport({
service: 'Gmail',
auth: {
user: 'foobar@gmail.com',
pass: 'foobar'
}
});
var mailOptions = {
from: 'Foo Bar ✔ <foobar@gmail.com>',
to: req.body.foo, // list of receivers
subject: "Hello FooBar",
text: 'Hello ' + req.body.foo,
html: "<p>Hello FooBar, you rock!</p>"
};
transporter.sendMail(mailOptions, function(error, info){
if(error){
console.log(error);
}else{
console.log('Message sent: ' + info.response);
}
});
});
我只是尝试使用 nodemailer 发送电子邮件,并且我已经能够正常发送电子邮件。
但是一旦发送了请求,我就会在控制台上收到 POST http://localhost:3000/send net::ERR_CONNECTION_RESET
。
有时我还会在控制台上收到 POST http://localhost:3000/send net::ERR_EMPTY_RESPONSE
。
有人可以帮助我理解为什么我会在控制台上看到它以及如何解决它吗?
最佳答案
您不会从您的路线返回响应。
res.send(200)
关于javascript - Nodemailer:ERR_CONNECTION_RESET 与 AngularJS 和 NodeJS 与 POST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25675153/