美文网首页
Express框架的路由

Express框架的路由

作者: 红烧排骨饭 | 来源:发表于2017-03-31 11:17 被阅读0次

什么是路由

路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET、POST 等)组成的,涉及到应用如何响应客户端对某个网站节点的访问

每一个路由都可以有一个或者多个处理器函数,当匹配到路由时,这些函数将被执行

路由的定义

路由的定义由如下结构组成

app.METHOD(PATH, HANDLER)

其中,app 是一个 express 实例;METHOD 是某个 HTTP 请求方式中的一个;PATH 是服务器端的路径;HANDLER 是当路由匹配到时需要执行的函数

例子

下面的代码展示了几个路由实例

// 对网站首页的访问返回 "Hello World!" 字样
app.get('/', function(req, res) {
    res.send('Hello, word!');
});

// 网站首页接受 POST 请求
app.post('/', function(req, res) {
    res.send('Got a POST request');
});

// /user 节点接受 PUT 请求
app.put('/user', function(req, res) {
    res.send('Got a PUT request at /user');
});

// /user 节点接受 DELETE 请求
app.delete('/user', function(req, res) {
    res.send('Got ad DELETE request at /user');
});

express.Router

看一下目前 index.js 文件的内容

var express = require('express');
var app = express();

app.get('/', function(req, res) {
    res.send('Hello, word!');
});

app.post('/', function(req, res) {
    res.send('Got a POST request');
});

app.put('/user', function(req, res) {
    res.send('Got a PUT request at /user');
});

app.delete('/user', function(req, res) {
    res.send('Got ad DELETE request at /user');
});

app.listen(3000);

可以看到这里写了很多的路由。在实际开发中通常有很多很多的路由,如果都写到一起的话,既臃肿也不好维护。可以使用 express.Router 实现更优雅的解决方案。在项目的 routes/ 文件夹下创建 index.jsuser.js 文件,把路由的定义写到这里。最终的效果如下

routes/index.js

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

router.get('/', function(req, res) {
    res.send('Hello, word!');
});

router.post('/', function(req, res) {
    res.send('Got a POST request');
});

module.exports = router;

routes/user.js

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

router.put('/', function(req, res) {
    res.send('Got a PUT request at /user');
});

router.delete('/', function(req, res) {
    res.send('Got ad DELETE request at /user');
});

module.exports = router;

index.js

var express = require('express');
var app = express();

var indexRouter = require('./routes/index');
var userRouter = require('./routes/user');

app.use('/', indexRouter);
app.use('/user', userRouter);

app.listen(3000);

相关文章

  • express 基础以及mongo基础

    express框架 express使用步骤 express的路由 express之next方法 express之通...

  • 在nodeJS中使用MongoDB

    (该代码仅作为参考例子使用,路由为自定义的模拟express框架路由) index.js express-rout...

  • Express中间件

    Express框架是由路由和中间件构成的一个web开发框架。 1. Express 中间件 中间件是Express...

  • nodeJS搭建web服务器

    1.下载安装express框架 Express 框架核心特性: 可以设置中间件来响应 HTTP 请求。 定义了路由...

  • Express框架的路由

    什么是路由 路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET、POST 等...

  • express框架

    「express」基于node.js后端框架,负责路由,业务逻辑,数据库操作,页面和数据响应。 使用express...

  • express框架关于路由

    api/:id 在前台使用这个借口时,id填写要上传的数据,也可以上传多个数据。可以用来做一些动态的路由。还有一种...

  • Express-node项目流

    Express,高度包容、快速而极简的 Node.js Web 框架 主要有: 路由 (请求网站任何东西,都是路由...

  • Express的使用整理

    express是基于node.js的web开发框架 express有4个核心,分别是中间件,路由,子应用,易用的A...

  • Node.js 教程大全之 Koa VS Express哪个是N

    Koa 是 Express 的轻量级版本。它是一个中间件框架,没有通过 Express 提供的所有附加模块(路由和...

网友评论

      本文标题:Express框架的路由

      本文链接:https://www.haomeiwen.com/subject/yhomottx.html