Express中的路由使用

在Express中,路由是一个核心概念,它定义了客户端的请求与服务器处理函数之间的映射关系。

  1. 路由的基本概念
    • 路由在广义上可以理解为一种映射关系。
    • 在Express中,路由特指客户端的HTTP请求(如GET、POST等)与服务器处理函数之间的映射关系。
    • 一个路由通常由三部分组成:请求类型(如GET、POST)、请求的URL地址以及处理函数。
  2. 路由的使用
    • Express提供了一系列方法来定义和使用路由,基本格式为app.<method请求方法>(path, callback)
    • 例如,使用app.get()定义一个GET请求的路由:
      app.get('/home', (req, res) => {
      res.send('Hello from /home');
      });
    • 当客户端发送一个GET请求到/home路径时,服务器会调用相应的处理函数并返回'Hello from /home'。
  3. 模块化路由
    • 对于大型应用,将所有路由都定义在主文件中可能会导致代码难以维护。因此,Express支持将路由抽离为单独的模块。
    • 创建一个路由文件(如routes/index.js),在该文件中定义并导出路由:
      const express = require('express');
      const router = express.Router();
      router.get('/', (req, res) => {
      res.send('Home page');
      });
      module.exports = router;
    • 在主文件(如app.js)中引入并使用该路由模块:
      const express = require('express');
      const indexRouter = require('./routes/index');
      const app = express();
      app.use('/', indexRouter);
      app.listen(3000, () => {
      console.log('Server started on port 3000');
      });
  4. 中间件与路由
    • Express中间件是一个函数,它可以访问请求对象(req)、响应对象(res)以及应用程序请求-响应周期中的下一个中间件函数(next)。
    • 中间件可以用于执行各种任务,如日志记录、身份验证、会话管理等。
    • 中间件可以全局应用,也可以针对特定路由应用。
  5. 路由的匹配过程
    • 当一个HTTP请求到达服务器时,Express会按照定义的路由顺序进行匹配。
    • 一旦找到匹配的路由,就会调用相应的处理函数,并停止后续的匹配过程。
    • 如果没有找到匹配的路由,Express会返回一个404错误。
  6. 路由参数与通配符
    • 路由参数允许你从URL中捕获值,并将其作为参数传递给处理函数。例如,/users/:id中的:id就是一个路由参数。
    • 通配符(如*)可以匹配任意路径,并捕获该路径作为参数。这通常用于处理静态资源或404错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值