2016-06-13 63 views
0

以下代碼是我的第一個Express restfull應用程序。運行server.js後,我在FireFox中進入http://localhost:3020/helloworld網址後,預計我得到Hello, World!消息,但我得到這個消息:Nodejs無法在簡單應用程序中獲取/ helloworld

Cannot GET /helloworld 

代碼:

var express = require('express'); 
var router = express.Router(); 
var app = express(); 
var server = require('http').createServer(app); 
var port = process.env.PORT || 3020; 

/* GET home page. */ 
router.get('/helloworld', function(req, res) { 
    res.render('helloworld', { title: 'Hello, World!' }); 
}); 

server.listen(port, function() { 
    console.log('Server listening at port %d', port); 
}); 
+0

快速路由器的文檔 - http://expressjs.com/en/guide/routing .html#express-router –

回答

5

您所定義的路由的路由器上,而不是在應用程序。

var router = express.Router(); 

是一個路由器,不同於應用程序。

var app = express(); 

你在做什麼錯了,是你是不是安裝在路由器上,其中/helloworld路由被定義的應用程序。

執行下列操作之一:

app.get('/helloworld', function(req, res) { 
    res.render('helloworld', { title: 'Hello, World!' }); 
}); 

否則添加在您的應用程序下面一行:

app.use('/',router); 
+0

之後,輸入url我得到這個錯誤:'錯誤:沒有指定默認引擎,沒有提供擴展名。 (/var/www/signal/nodeJs/node_modules/express/lib/view.js:48:42)''我把'render'改成了'console.log(「dddddddd」);' –

+0

@Mahdi。 Pishguy ..你需要指定'view engine',你將使用哪個模板。閱讀http://expressjs.com/ –

+0

''查看引擎'是的,但我不需要任何觀點,我只想在控制檯上回顯簡單的消息作爲json格式的消息,我怎麼能改變我的路線? –

相關問題