Node.js应用程序在本地主机上运行良好,但在Heroku上部署时显示错误

时间:2020-04-18 14:44:43

标签: javascript node.js heroku mongoose

下面是我的index.js文件的代码。我用猫鼬进行数据库连接。每次我尝试运行应用程序时,它都会在get方法中显示错误。进程终止,没有子进程错误。

def serialize(json_fname):
  with open(json_fname, 'r') as f:
    json_lines=f.readlines()

  out=''
  for line in json_lines:
    out+=line
  out=out.replace(' ','')
  return out.replace('\n','')

serialized=serialize('myjson.json')

#  Later in the program:
#    do(serialized)

下面是该错误的屏幕截图。Screenshot for heroku logs

1 个答案:

答案 0 :(得分:1)

Heroku中定义的端口存储在环境变量process.env.PORT中。您需要更改代码才能使用它。怎么样?更改PORT变量声明,而不要执行以下操作:

const PORT = 4000;

使用此:

const PORT = process.env.PORT || 4000

该行使用process.env.PORT环境变量(如果已定义)(即在Heroku上),并使用4000(如果未定义)(这意味着在本地计算机上)。