2016-07-06 22 views
-1

我想出來的Node.js和一些世界您好實例函數,我得到這個錯誤node.js的類型錯誤:未定義不上app.get(「/」)

TypeError: undefined is not a function 
    at c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\server.js:10:13 
    at Layer.handle [as handle_request] (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\layer.js:95:5) 
    at next (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\route.js:131:13) 
    at Route.dispatch (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\route.js:112:3) 
    at Layer.handle [as handle_request] (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\layer.js:95:5) 
    at c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\index.js:277:22 
    at Function.process_params (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\index.js:330:12) 
    at next (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\index.js:271:10) 
    at expressInit (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\middleware\init.js:33:5) 
    at Layer.handle [as handle_request] (c:\users\admin\documents\visual studio 2015\Projects\TheBoard\TheBoard\node_modules\express\lib\router\layer.js:95:5) 

這裏的我的代碼

var http = require("http"); 
var express = require("express"); 
var app = express(); 

app.get("/", 
    function(res, req) { 
     res.send("<html><body><h1>Express</h1></body></html>");   
    }); 

app.get("/api/users", 
    function(req, res) { 
     res.send({ name: "Louis", isValid: true, group: "Admin" }); 
    }); 

var server = http.createServer(app); 

server.listen(3000); 

我只發現了錯誤,當我打http://localhost:3000/

我沒有得到任何錯誤,當我打http://localhost/api/users

回答

3

參數排序問題.. req對象沒有任何發送函數。

var http = require("http"); 
var express = require("express"); 
var app = express(); 

app.get("/", 
    function(req, res) { 
     res.send("<html><body><h1>Express</h1></body></html>");   
    }); 

app.get("/api/users", 
    function(req, res) { 
     res.send({ name: "Louis", isValid: true, group: "Admin" }); 
    }); 

var server = http.createServer(app); 

server.listen(3000); 
1

您的app.get功能( 「/」)是不正確的。您通過參數的順序不正確。正確的方法是先給請求對象,然後響應對象。正確的方法是這樣寫:

app.get("/", 
    function(req, res) { 
    res.send("<html><body><h1>Express</h1></body></html>");   
    }); 

希望這可能適合你。 :)