Node + Express JS API不起作用

我是node.js的初学者,但我尝试了更多的在node + express js.中开始构build一个结构。我开始使用前端和独立的API结构。我把API和前面的一个app.js – 结束,但我的API不工作。 它给错误当我打电话给http:// localhost:3000 / api /用户时,不能GET / api /用户 。 请帮忙

api -controllers -helpers -middlewares -models -routes.js app.js controllers helpers middlewares models node_modules package.json public views 

app.js

 var express = require('express') , app = express() , bodyParser = require('body-parser') , port = process.env.PORT || 3000 var path = require('path'); app.set('views', path.join(__dirname, 'views/')); app.set('view engine', 'ejs') app.use(express.static(__dirname + '/public')) app.use(bodyParser.json()) app.use(bodyParser.urlencoded({extended: true})) app.use(require('./controllers')) var routes = require('./api/routes'); app.use('/api', routes); app.listen(port, function() { console.log('Listening on port ' + port) }) 

routes.js

 var express = require('express') , router = express.Router() var usersController = require('./controllers/users'); module.exports = function (app) { app.get('/users', usersController.getUser); }; module.exports = router; 

users.js(控制器)

 module.exports = { getUser: function (req, res) { console.log("sdfdsfdsfsd"); res.setHeader('Content-Type', 'application/json'); res.send(JSON.stringify({"msg": "welcome user"})); } } 

在您的routes.js文件中,您导出了两件事情。 尝试只导出路由器

 var express = require('express') , router = express.Router() var usersController = require('./controllers/users'); router.get('/users', usersController.getUser); module.exports = router;