感谢您抽出宝贵时间帮助我
IM 部署 NodeJS Express JS 项目这些是我完成的步骤:
1-将端口更改为:process.env.PORT法典:
const PORT = process.env.PORT || 9000;
app.listen(PORT , function() {
console.log('Application is listening on 9000');
});
2-创建Procfile:web:节点服务器.js
3-确保在包json中npm start命令指向"节点路径/服务器.js"服务器在本地工作
4-重要说明:我正在从前端向服务器发送AJAX请求以获取数据我已经阅读了您的文档,我应该添加 0.0.0.0
$.ajax({
url: "0.0.0.0/hotels",
cache: false,
type: 'GET',
success: function(result) {
bla bla ....
}
});
此外,我还尝试添加Heroku的URL,这是我在创建后获得的URL
提前致谢祝你有美好的一天
还没有解决它,但我组织了一些有用的 heroku 命令
有用的命令
git remote -vGit Remote RM Heroku希罗库创造git push heroku master英雄库 PS:比例网络=1希罗库公开赛希罗库日志--尾巴希罗库奔跑狂欢
你的代码看起来不错(除了0.0.0.0
- 只需使用像/
这样的相对路径(。我会确保你真的把你那里的改变推到了那里。如果您运行 heroku run bash
,您是否看到您的 Procfile?在该环境中运行node server.js
时,它是否成功运行?
我见过 Heroku 客户陷入这样的问题,而现实是他们在本地拥有的代码没有正确发送到 Heroku。
您好@jmccartie感谢您的回复,但仍然不起作用会不会是静态__dirname?我开始质疑代码的每个部分:D
我改变了路径,只是为了确保我理解正确它曾经是:"http://localhost:9000/data/hotels"现在是:"/数据/酒店">
你介意看看我的代码吗?只需仔细检查我提到的部分https://github.com/hibaAkroush/herokuNode我会命名文件以使您更轻松
1-根目录中的Procfile
2- 服务器/索引中的服务器.js第 24 行
3-前端(IM发送ajax GET请求的位置(客户端/主页.js第6行
4- packagejson 第 10 行:"开始":"节点服务器/索引.js">
谢谢
我修复了它...哇!不确定我做了什么修复了它
但我所做的是:
1-我将服务器移动到根目录,当然对代码进行了一些更改,因此它仍然可以正常工作,而不是在本地测试以确保
2-推送在GitHub上
3- 将 ./添加到 procfile,所以它变成了
web: node ./index.js而不是 web: 节点索引.js
谢谢大家!