![](/img/trans.png)
[英]How to host a node js / express server with MySQL on Elastic Beanstalk AWS
[英]How to deploy Node/Express server with AWS Elastic Beanstalk
我正在尝试部署一个简单的服务器,该服务器从我在 angular 2 前端的联系人表单发送电子邮件。
我正在尝试让服务器在 AWS Elastic Beanstalk 上工作,但是当我尝试上传它并让它运行时,我不断收到“严重”的健康状态错误。 不过,它在我的本地主机环境中运行良好。
我是否缺少诸如“开始”脚本之类的东西? 我需要对我的端口做些什么吗? 这是我的第一个节点/快速服务器,所以我可能遗漏了一些愚蠢的东西。
这是我的 server.js 文件:
var express = require('express');
var nodemailer = require('nodemailer');
var mg = require('nodemailer-mailgun-transport');
var bodyParser = require('body-parser');
var app = express();
var path = require('path');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.all("/*", function(req, res, next){
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS');
res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, Content-Length, X-Requested-With');
next();
});
//api key and domain for mailgun
var auth = {
auth: {
api_key: 'key',
domain: 'sandbox.mailgun.org'
}
}
//send email from angular 2 with nodemailer here
app.post('/contact-form-submit', function(req, res) {
var transporter = nodemailer.createTransport(mg(auth));
var mailOptions = {
from: 'postmaster@.mailgun.org',
to: 'emailname@email.com',
subject: ' Form Submission',
text: ' Name: ' + req.body.name + ' Email: ' + req.body.email + ' Message: ' + req.body.message + ' Jobs: ' + req.body.jobs,
html: '<p>You have a new form submission: </p><br><ul><li>Name: ' + req.body.name + '</li><li>Email: ' + req.body.email + '</li><li>Jobs: ' + req.body.jobs + '</li><li>Message: ' + req.body.message + '</li></ul>'
};
transporter.sendMail(mailOptions, function(error, info) {
if (error) {
console.log(error);
res.redirect('/');
} else {
console.log('Message sent.');
res.redirect('/');
}
})
});
app.listen(3000, function() {
console.log('Express started on port 3000');
});
这是我的 package.json 文件:
{
"name": "project-name-here",
"version": "1.0.0",
"dependencies": {
"body-parser": "^1.17.2",
"express": "^4.15.4",
"nodemailer": "^4.0.1",
"nodemailer-mailgun-transport": "^1.3.5"
}
}
需要在package.json文件中添加启动脚本配置
{
"name": "project-name-here",
"version": "1.0.0",
"scripts": {
"start": "node server"
},
"dependencies": {
"body-parser": "^1.17.2",
"express": "^4.15.4",
"nodemailer": "^4.0.1",
"nodemailer-mailgun-transport": "^1.3.5"
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.