Tenho problemas com o roteamento no express 4.13
Aqui está o meu arquivo index.js:
var express = require("express");
var app = express();
var wagner = require("wagner-core");
var morgan = require("morgan");
app.use(morgan("combined"));
require ("./models")(wagner);
var api = require("./api");
app.use("/api/v1", api);
app.listen(3000, function() {
console.log("Server Started!!!");
});
E este é um arquivo com rotas:
var express = require("express");
// var status = require("http-status");
module.exports = function() {
var api = express.Router();
api.get("/category/id/:id", function(req,res){
console.log("TEST")
res.send("TEST");
});
}
Depois que eu visito http://localhost:3000/api/v1/category/id/123 página apenas carregando e nada aconteceu ... Alguém sabe o que é problema?
Respostas:
3 para resposta № 1Mover var api = express.Router();
fora do objeto exportado.
var express = require("express");
var api = express.Router();
api.get("/category/id/:id", function(req,res){
console.log("TEST")
res.send("TEST");
});
module.exports = api;
Porque você precisa montar um módulo roteador pronto para usar no aplicativo principal.
O objeto exportado precisa ser um manipulador de rota em si.
2 para resposta № 2
O seguinte trabalho?
var api = express.Router();
api.get("/category/id/:id", function(req,res){
console.log("TEST")
res.send("TEST");
});
module.exports = api;
0 para resposta № 3
Encontrei um problema no meu código ... Não devolvi o roteador.
A função interna deve ser:
return api;