Node.js在本地加载但不在heroku上加载

时间:2016-09-14 23:18:50

标签: heroku

我对Heroku很陌生,在使用简单的节点应用程序并且无法访问时遇到了一些麻烦。

我可以在本地运行应用程序,但是一旦它被推送到Heroku,我就会收到应用程序错误。

我添加了一个Procfile以及一个' start'我的package.json中的值,但无论如何,我始终得到"应用程序错误。"

我知道已经提出了类似的问题但是那里的解决方案还没有解决问题。

Package.json:

{
  "name": "twiliosender",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
  "start": "node index.js"
  },
  "author": "",
  "license": "ISC",
  "engines": {
    "node": "4.4.7"
  },
  "dependencies": {
    "cool-ascii-faces": "^1.3.4",
    "express": "^4.14.0",
    "node": "0.0.0",
    "twilio": "^2.10.0"
  }
}

Procfile:

web: node index.js

index.js

var client = require('twilio')(accountSid, authToken);
var express = require('express');
var app = express();

app.get('/', function(req, res){
  res.sendFile('/static/index.html',{root: __dirname})

});


app.post('/send', 
    function(req, res){
    res.send(client.messages.create({
    to: ""
    , from: ""
    , body: possibleTextMessages[picker()],
    }, function(err, message) { 
    console.log(message.sid); 
})
)});


app.listen(3000)

1 个答案:

答案 0 :(得分:0)

调整app.listen()调用以接受任何ip已经解决了问题,以防任何人遇到类似的问题。

app.listen(process.env.PORT, '0.0.0.0', function(err) { console.log("Started listening on %s", app.url);