node.js中express的Router路由的使用
express中的Router作用就是为了方便我们更好的根据路由去分模块。避免将所有路由都写在入口文件中。
一、简单的使用Router
const express = require('express');
let app = express();
app.listen(8888);
//创建路由实例,我们可以在该实例上自由的添加路由
let usersRouter = express.Router();
let orderRouter = express.Router();
//添加两个路由到应用上
app.use('/users', usersRouter);
app.use('/order', orderRouter);
//注意这时候再加路由,就可以不带前面的/users路径了
usersRouter.get('/', function (req, res) {
res.send('用户首页');
});
usersRouter.get('/:id', function (req, res) {
res.send(`${req.params.id} 用户信息`);
});
//注意这时候再加路由,就可以不带前面的/order路径了
orderRouter.get('/', function (req, res) {
res.send('订单首页');
});
orderRouter.get('/:id', function (req, res) {
res.send(`${req.params.id} 订单信息`);
});
二、划分文件使用Router
创建一个routes目录,专门用于放置路由文件,通过module.exports导出供外部使用。
const express = require('express');
let app = express();
app.listen(8888);
//添加两个路由到应用上
app.use('/users', require('./routes/users'));
app.use('/order', require('./routes/order'));
//404判断
app.use(function (req, res) {
res.send('404 not found');
});
users.js的代码:
const express = require('express');
let router = express.Router();
router.get('/', function (req, res) {
res.send('用户首页');
});
router.get('/:id', function (req, res) {
res.send(`${req.params.id} 用户信息`);
});
//导出该路由
module.exports = router;
order.js的代码:
const express = require('express');
let router = express.Router();
router.get('/', function (req, res) {
res.send('订单首页');
});
router.get('/:id', function (req, res) {
res.send(`${req.params.id} 订单信息`);
});
//导出该路由
module.exports = router;
Router是可以嵌套的,如果你想划分的更细,一个子路由还以引用子子路由,不断分下去。
node.js中express的Router路由的使用的更多相关文章
- node.js中express模块创建服务器和http模块客户端发请求
首先下载express模块,命令行输入 npm install express 1.node.js中express模块创建服务端 在js代码同文件位置新建一个文件夹(www_root),里面存放网页文 ...
- node.js中express框架的基本使用
express是一个基于node.js平台的,快速,开放,极简的web开发框架. 一.安装 express npm install express --save 二.简单使用 express //引入 ...
- KoaHub平台基于Node.js开发的Koa router路由插件代码信息详情
koa-router Router middleware for koa. Provides RESTful resource routing. koa-router Router mid ...
- node.js中express使用cookie-parser 和 cookie-session处理会话
cookie-parser 中间件用来解析客户端传过来的cookie,cookie-session 中间件用来建立基于cookie的会话session. 一.安装 cookie-parser 和 co ...
- node.js中 express + multer 处理文件上传
multer中间件,可以很方便的结合express处理用户表单上传的文件. 一.安装multer npm install multer 二.处理单个文件上传 const express = requi ...
- 配置node.js中的express框架
玩node.js,不玩后台那就是杀鸡牛刀,今天没事整理一下以前开发node.js后台的心得 1.首先安装node.js以及cnpm,在这儿我就不说了,看我node.js中的另一篇文章node.js的安 ...
- node.js中的路由(url)初步
1.建立n4_root.js var http = require('http'); var url = require('url'); //这是node.js中自带的var router = req ...
- Node.js、express、mongodb 入门(基于easyui datagrid增删改查)
前言 从在本机(win8.1)环境安装相关环境到做完这个demo大概不到两周时间,刚开始只是在本机安装环境并没有敲个Demo,从周末开始断断续续的想写一个,按照惯性思维就写一个增删改查吧,一方面是体验 ...
- Node.js基于Express框架搭建一个简单的注册登录Web功能
这个小应用使用到了node.js bootstrap express 以及数据库的操作 :使用mongoose对象模型来操作 mongodb 如果没了解过的可以先去基本了解一下相关概念~ 首先注 ...
随机推荐
- Redis中存入存储的编码方式不一致解决问题
在利用redis缓存的时候,存入的数据与取出的数据编码方式不一致解决办法. from redis import StrictRedis #ecoding = 'utf-8',默认解码方式为bytes, ...
- Flutter 知识点
Flutter:一个移动应用开发框架,它使用 Dart.C++.Skia 开发,对外提供了完全不依赖系统平台的 Widget 的能力,只通过自绘图形的方式工作,具有极其优秀的跨平台性.目前已经支持了 ...
- c语言fork 多进程
fork函数的作用 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两 ...
- Bootstrap 插件收集
Bootstrap-Mutilselect 将下拉选项扩展支持多选以及多种选择方式 http://davidstutz.de/bootstrap-multiselect/ Bootstrap Sel ...
- C++Primer第五版——习题答案详解(一)
习题答案目录:https://www.cnblogs.com/Mered1th/p/10485695.html 第1章 开始&&第2章 变量和基本类型 练习1.3 #include&l ...
- [UE4]瞬移
1.设置Input,事件名称设置为Teleport 2.设置事件Teleport 3.
- c# 字典
字典 在System.Collections.Generic下, 对应HashTable,添加了泛型的特性,性能更高跟安全 在内存中是散列排布的,存储也是键值对 Dictionary<键的数据类 ...
- Codeforces Round #551 (Div. 2) A-E
A. Serval and Bus 算出每辆车会在什么时候上车, 取min即可 #include<cstdio> #include<algorithm> #include< ...
- C#中redis订阅后程序不再继续执行
项目开发中使用到了redis订阅功能,在订阅的代码执行成功后,发现本应继续执行的程序断不到点, 经过查看redis订阅的源码,发现订阅成功后,会一直循环执行一个监听频道推送消息的动作,导致后续代码无法 ...
- Laravel中队列的使用
以laravel5.5为例子: 1.配置队列:composer require "predis/predis:~1.0" a.在ENV中配置:QUEUE_DRIVER=redis ...