如何在Node.js和Express 4上分开路由?

耶鲁巴克

我想将路由与server.js文件分开。

我正在Scotch.io上关注本教程,网址为http://scotch.io/tutorials/javascript/build-a-restful-api-using-node-and-express-4

如果所有行都在server.js文件上,则它可以正常工作。但是我没有分开。我该如何工作?

server.js

// set up ======================================================================
var express = require('express');
var app = express();
var bodyParser = require('body-parser');

// configuration ===============================================================
app.use(bodyParser());

var port = process.env.PORT || 8000;

var mongoose = require('mongoose');
var database = require('./config/database');
mongoose.connect(database.url);
var Video = require('./app/models/video');

// routes =======================================================================
app.use('/api', require('./app/routes/routes').router);

// listen (start app with node server.js) ======================================
app.listen(port);
console.log("ready captain, on deck" + port);

module.exports = app;

还有app / routes / routes.js

var express = require('express');
var router = express.Router();

router.use(function(req, res, next) {
  console.log('Something is happening.');
  next();
});

router.get('/', function(req, res) {
  res.json({ message: 'hooray! welcome to our rest video api!' });  
});


router.route('/videos')

  .post(function(req, res) {

    var video = new Video();
    video.title = req.body.title;

    video.save(function(err) {
  if (err)
    res.send(err);

  res.json({ message: 'Video criado!' });
});


  })

  .get(function(req, res) {
    Video.find(function(err, videos) {
      if (err)
        res.send(err);

      res.json(videos);
    });
  });

module.exports.router = router;
基兰·帕格(Kiran Pagar)

就将路由与主文件分开而言。

Server.js

//include the routes file
var routes = require('./routes/route');
var users = require('./routes/users');
var someapi = require('./routes/1/someapi');

////////
app.use('/', routes);
app.use('/users', users);
app.use('/1/someapi', someapi);

路线/route.js

//last line - try this
module.exports = router;

同样对于新项目,您可以在命令行上尝试

express project_name

您将需要为此的快递发电机

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在 Node JS 中使用 express 创建控制器和路由器

来自分类Dev

具有参数的Node.js和Express路由

来自分类Dev

使用Express和Passport JS重定向Node中的路由

来自分类Dev

如何使用NodeJS和Express将路由和数据库功能与appRouter.js分开

来自分类Dev

如何在Node.js和Express中使用PATCH

来自分类Dev

Node.js Express路由命名和排序:如何确定优先级?

来自分类Dev

Twitter在Node.js和Express上的引导

来自分类Dev

如何在Express.js中设置用于创建,更新,获取和删除的REST API路由?

来自分类Dev

我如何在端口80上获取node.js express.js

来自分类Dev

没有Express的情况下,如何在Node.js中路由子域?

来自分类Dev

如何在Node.js(express)上返回由{}而不是[]包围的json,从而使用knex和postgresql返回查询结果

来自分类Dev

如何在Node.js(express)上返回由{}而不是[]包围的json,从而使用knex和postgresql返回查询结果

来自分类Dev

如何使用NodeJS和Express将路线和模型与app.js分开

来自分类Dev

如何使用NodeJS和Express将路线和模型与app.js分开

来自分类Dev

如何在Nitrous.IO上设置MEAN(Mongo,Express,Angular和Node)堆栈

来自分类Dev

如何在Cookie上指定SameSite和安全(使用axios / React / Node Express)

来自分类Dev

如何在Azure网站中的node.js上强制Express使用https?

来自分类Dev

如何在Azure网站中的node.js上强制Express使用https?

来自分类Dev

如何在Node.js Express上为gitlab配置反向代理规则

来自分类Dev

你如何在 VPS 上找到 node.js express 站点的 url?

来自分类Dev

在Express(node.js)和neo4j数据库上存储会话

来自分类Dev

如何在Node.js路由器中使用Promise和yield?

来自分类Dev

如何在Ubuntu上安装Express JS?

来自分类Dev

在node.js + express + ejs上包括CSS和js文件

来自分类Dev

如何在Node.js和Express.js应用程序中设置HttpOnly标志?

来自分类Dev

如何在路由(node.js)中正确使用next()

来自分类Dev

如何在node.js + Express.js + mongodb应用程序上异步启动Mocha测试

来自分类Dev

使用Express和Node.js进行路由时出现404错误

来自分类Dev

使用 express 和 ES6 类在 node js rest api 中查找路由的问题

Related 相关文章

  1. 1

    如何在 Node JS 中使用 express 创建控制器和路由器

  2. 2

    具有参数的Node.js和Express路由

  3. 3

    使用Express和Passport JS重定向Node中的路由

  4. 4

    如何使用NodeJS和Express将路由和数据库功能与appRouter.js分开

  5. 5

    如何在Node.js和Express中使用PATCH

  6. 6

    Node.js Express路由命名和排序:如何确定优先级?

  7. 7

    Twitter在Node.js和Express上的引导

  8. 8

    如何在Express.js中设置用于创建,更新,获取和删除的REST API路由?

  9. 9

    我如何在端口80上获取node.js express.js

  10. 10

    没有Express的情况下,如何在Node.js中路由子域?

  11. 11

    如何在Node.js(express)上返回由{}而不是[]包围的json,从而使用knex和postgresql返回查询结果

  12. 12

    如何在Node.js(express)上返回由{}而不是[]包围的json,从而使用knex和postgresql返回查询结果

  13. 13

    如何使用NodeJS和Express将路线和模型与app.js分开

  14. 14

    如何使用NodeJS和Express将路线和模型与app.js分开

  15. 15

    如何在Nitrous.IO上设置MEAN(Mongo,Express,Angular和Node)堆栈

  16. 16

    如何在Cookie上指定SameSite和安全(使用axios / React / Node Express)

  17. 17

    如何在Azure网站中的node.js上强制Express使用https?

  18. 18

    如何在Azure网站中的node.js上强制Express使用https?

  19. 19

    如何在Node.js Express上为gitlab配置反向代理规则

  20. 20

    你如何在 VPS 上找到 node.js express 站点的 url?

  21. 21

    在Express(node.js)和neo4j数据库上存储会话

  22. 22

    如何在Node.js路由器中使用Promise和yield?

  23. 23

    如何在Ubuntu上安装Express JS?

  24. 24

    在node.js + express + ejs上包括CSS和js文件

  25. 25

    如何在Node.js和Express.js应用程序中设置HttpOnly标志?

  26. 26

    如何在路由(node.js)中正确使用next()

  27. 27

    如何在node.js + Express.js + mongodb应用程序上异步启动Mocha测试

  28. 28

    使用Express和Node.js进行路由时出现404错误

  29. 29

    使用 express 和 ES6 类在 node js rest api 中查找路由的问题

热门标签

归档