我正在尝试将一个简单的node.js应用程序部署到heroku但它仍然告诉我“缺少脚本:启动”,即使在package.json中添加它之后 我的packacge.json看起来像: -
{
"name": "deploy_demo",
"version": "1.0.0",
"keywords": [
"util",
"functional",
"server",
"client",
"browser"
],
"author": "Babar",
"contributors": [],
"dependencies": {
"ejs": "^2.5.2",
"express": "^4.14.0"
},
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node main.js"
},
"license": "ISC",
"description": ""
}
我的入门点代码: main.js
Heroku日志: heroku logs
注意:此应用在localhost服务器上正常运行 请帮帮我,我是node.js的新手,谢谢
答案 0 :(得分:3)
使用process.env.PORT
在任何Node.js Heroku应用程序中设置端口。
另外请确保您在localhost
上运行的代码与在Heroku应用程序上运行的代码相同。
答案 1 :(得分:2)
您无法在Heroku上侦听自定义端口,您必须使用process.env.PORT以便他们可以为您设置它。
答案 2 :(得分:2)
听起来你确定它在package.json
喜欢,
"scripts": {
"start": "node main.js"
}
..您可以尝试添加Procfile,
web: npm start
除此之外,如果它只为你本地工作,也要确保你提交并推送到Heroku,例如git push heroku master
。
除此之外:顺便说一句,对流是将起点命名为server.js
答案 3 :(得分:1)
试试
"scripts":{
"start":"node ."
}
并在env中使用PORT