表示对路由没有响应

表示对路由没有响应

问题描述:

我使用nodejs并为api端点表示,我使用app.use来处理路由,但无论我做什么,它都没有响应。表示对路由没有响应

var express = require("express"); 
var mongoose = require('mongoose'); 
var path = require("path"); 
var favicon = require("serve-favicon"); 
var http = require('http'); 

var app = express(); 

var config = require('./conf/config'); 

var PORT = config.PORT; 

mongoose.connect(config.MONGODB); 

//route handlers 

app.use('/', function(req, res) { 
    console.log("Hello"); 
}); 

var server = http.createServer(function(req, res) { 
    console.log("Request received", req.url); 
}); 

server.listen(PORT); 
console.log("Server running on port", PORT); 

应该在控制台上打印打招呼时,我要求就根本途径即/但它没有做任何事情。

您的快速代码不正确。您正在创建一个简单的Web服务器,但该Web服务器没有以任何方式连接到Express。如果您不想创建任何特殊类型的服务器(如https服务器),那么您可以让Express使用app.listen(PORT)为您创建服务器,然后它将创建一个服务器并将自己挂接到该服务器。

我建议这样的:

var express = require("express"); 
var mongoose = require('mongoose'); 
var path = require("path"); 
var favicon = require("serve-favicon"); 

var app = express(); 

var config = require('./conf/config'); 
var PORT = config.PORT; 

mongoose.connect(config.MONGODB); 

//route handlers 

app.get('/', function(req, res) { 
    console.log("Hello"); 
    res.send("Hello"); 
}); 

app.listen(PORT); 
console.log("Server running on port", PORT); 

注:我改变了一些其他的一些东西。我切换到app.get(),并且我插入了一个res.send(),因为您需要始终发送某种类型的浏览器响应,只需等待并等待返回的内容即可。

+0

哦,男人,你救了我,谢谢。 –

尝试使用app.get而不是app.use。后者用于安装子路径,使用中间件等,但不用于实际配置请求处理程序。

+0

是的,我正在使用子路线方式,只是编辑粘贴在这里。 –