Node.js Heroku节点js错误:';内部服务器错误';
我已经在localhost上创建了我的第一个node js应用程序:) 这是一个API,在localhost上可以完美运行: 我在地址栏上键入“”,得到:Node.js Heroku节点js错误:';内部服务器错误';,node.js,heroku,Node.js,Heroku,我已经在localhost上创建了我的第一个node js应用程序:) 这是一个API,在localhost上可以完美运行: 我在地址栏上键入“”,得到: {"Bezeq":"תפוס","Hot":"תפוס","Cellcom":"לא פנויה","Partner":"תפוס"} (它做它应该做的事) 我将我的文件夹部署到Heroku,在遇到一些问题后,我成功地做到了这一点。我制作了一个Procfile(我看了一个教程,其中说这是必要的…),并将端口号更改为process.env.p
{"Bezeq":"תפוס","Hot":"תפוס","Cellcom":"לא פנויה","Partner":"תפוס"}
(它做它应该做的事)我将我的文件夹部署到Heroku,在遇到一些问题后,我成功地做到了这一点。我制作了一个Procfile(我看了一个教程,其中说这是必要的…),并将端口号更改为
process.env.port
在所有这些之后,我认为我已经完成了,但不幸的是,事实并非如此。
当尝试在“”处打开我的应用程序时,我发现:
内部服务器错误
我的日志: Package.json:
{
"name": "my-app-name",
"version": "1.0.0",
"description": "",
"main": "MainAPI.js",
"dependencies": {
"express": "^4.17.1",
"table-scraper": "^0.1.0"
},
"devDependencies": {},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
MainAPI.js:
const http = require('http');
const express = require('express');
var app = express();
app.listen(process.env.PORT || 8080);
app.get('/home', function (req, res) {
getStarsStatus(req.query.star.toString(),()=>{
res.end(JSON.stringify(statuses));
});
});
var statuses = {
'Bezeq': '',
'Hot': '',
'Cellcom': '',
'Partner': ''
};
function getStarsStatus(star, callback) {
let numStatusesFetched = 0;
require('./Bezeq').GetStarStatus(star, function(status) {
statuses['Bezeq'] = status;
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
require('./Hot').GetStarStatus(star, function(status){
statuses['Hot'] = status[0][0]['סטטוס'];
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
require('./Partner').GetStarStatus(star, function(status) {
statuses['Partner'] = status;
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
require('./Cellcom').GetStarStatus(star, function(status) {
statuses['Cellcom'] = status;
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
}
有人知道为什么它不起作用吗?谢谢大家! 天哪,我真蠢..
我输入了
number=3333
而不是star=3333
。谢谢大家请再给我一些日志好吗?在你发布之前,应该有一些解释你的错误这是我所有的。。。如果我错了,请纠正我:Heroku>我的应用程序名称>更多>查看日志更正,下拉列表中的“所有进程”。日志是否可滚动?请使用应用程序文件夹中的
heroku日志
,或将PaperTrail插件添加到heroku(免费)上的应用程序中,以查看完整的日志并粘贴到此处。请共享包.json
和conde-sniped,以便服务器启动
(可能是index.js
或server.js
)。
const http = require('http');
const express = require('express');
var app = express();
app.listen(process.env.PORT || 8080);
app.get('/home', function (req, res) {
getStarsStatus(req.query.star.toString(),()=>{
res.end(JSON.stringify(statuses));
});
});
var statuses = {
'Bezeq': '',
'Hot': '',
'Cellcom': '',
'Partner': ''
};
function getStarsStatus(star, callback) {
let numStatusesFetched = 0;
require('./Bezeq').GetStarStatus(star, function(status) {
statuses['Bezeq'] = status;
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
require('./Hot').GetStarStatus(star, function(status){
statuses['Hot'] = status[0][0]['סטטוס'];
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
require('./Partner').GetStarStatus(star, function(status) {
statuses['Partner'] = status;
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
require('./Cellcom').GetStarStatus(star, function(status) {
statuses['Cellcom'] = status;
numStatusesFetched++;
if(numStatusesFetched == 4) callback();
});
}