2015-11-03 49 views
2

下面是我添加了「cool-ascii-faces」的package.json文件的依賴項,然後需要更新我的index.js文件以獲取/ cool頁面因此,在每次重裝我會看到一個ASCII的臉。我得到一個404錯誤,它說「無法獲得/酷」本地Heroku nodejs教程無法獲取/冷卻

"dependencies": { 
    "ejs": "2.3.3", 
    "express": "4.13.3", 
    "cool-ascii-faces": "~1.3" 

    } 

下面是我調用index.js文件聲明酷

var cool = require('cool-ascii-faces'); 
var express = require('express'); 
var app = express(); 

app.set('port', (process.env.PORT || 5000)); 

app.use(express.static(__dirname + '/public')); 

// views is directory for all template files 
app.set('views', __dirname + '/views'); 
app.set('view engine', 'ejs'); 

app.get('/cool', function(request, response) { 
    response.render('pages/index') 
}); 

app.get('/cool', function(request, response) { 
    response.send(cool()); 
}); 

app.listen(app.get('port'), function() { 
    console.log('Node app is running on port', app.get('port')); 

然後運行npm install來更新依賴關係,然後使用heroku local,但是得到404錯誤。

任何幫助正確的方向將是偉大的!

回答

-1

您不必包括

app.set('port', (process.env.PORT || 5000)); 
app.listen(app.get('port'), function() { 
    console.log('Node app is running on port', app.get('port')); 
} 

的Heroku將運行「NPM啓動」啓動服務器,並動態選擇的端口。您不必明確指定端口。

0

由於模塊依賴性錯誤,您在啓動節點Web服務器時可能會遇到異常。

檢查您的命令/終端窗口。如果你看到一個紅色的警告信息,指向您module.js文件,你有一個例外:

 
$ heroku local 
forego | starting web.1 on port 5000 
web.1 | module.js:341 

在這種情況下,您需要安裝冷卻ASCII的面孔模塊。在你的「節點JS-工具入門」目錄下,使用下面的命令故宮安裝: $ npm i -S cool-ascii-faces

而且......你會想你的索引頁的路線轉換回'/'。你的路由邏輯應該是這樣的:

app.get('/', function(request, response) { 
    response.render('pages/index') 
}); 

app.get('/cool', function(request, response) { 
    response.send(cool()); 
}); 

否則,你永遠得到默認的「頁/索引頁面,當你點擊「/酷」路線,而不是一個笑臉。