简述Node express常用函数有哪些?

参考回答

在 Node.js 的 Express 框架中,常用的函数主要包括以下几类:

  1. app.use():用于注册中间件函数,比如处理请求数据、日志记录等。
  2. app.get():用于定义处理 GET 请求的路由。
  3. app.post():用于定义处理 POST 请求的路由。
  4. app.put():用于定义处理 PUT 请求的路由。
  5. app.delete():用于定义处理 DELETE 请求的路由。
  6. app.listen():用于启动服务器,监听指定端口上的请求。
  7. res.send():用于向客户端发送响应数据。
  8. res.json():用于向客户端发送 JSON 格式的响应。
  9. req.params:获取 URL 路径中的参数。
  10. req.query:获取 URL 查询字符串参数。

这些函数涵盖了路由定义、请求处理、响应发送等常见任务。


详细讲解与拓展

  1. app.use()
    • 用于为应用程序注册中间件。例如:
      const express = require('express');
      const app = express();
      
      app.use(express.json()); // 解析 JSON 格式的请求体
      app.use((req, res, next) => {
       console.log(`{req.method} request for{req.url}`);
       next(); // 调用 next() 传递控制权
      });
      
      JavaScript
    • 拓展:中间件可以实现日志记录、错误处理、权限校验等功能,按顺序执行。
  2. app.get()app.post()
    • Express 提供了方法来定义路由和处理 HTTP 请求。例如:
      app.get('/users/:id', (req, res) => {
       const userId = req.params.id; // 获取路径参数
       res.send(`User ID: ${userId}`);
      });
      
      JavaScript
    • 拓展
      • 支持动态路由:/users/:id 表示 id 是一个动态参数。
      • 可以结合中间件链式处理:例如先校验参数,再返回响应。
  3. res.send()res.json()
    • 用于向客户端发送响应。
      app.get('/', (req, res) => {
       res.send('Hello, World!'); // 发送字符串
      });
      
      app.get('/data', (req, res) => {
       res.json({ message: 'Hello, World!' }); // 发送 JSON
      });
      
      JavaScript
    • 区别
      • res.send() 可以发送字符串、HTML 或 Buffer。
      • res.json() 专门用于发送 JSON 数据,会自动设置 Content-Type: application/json
  4. req.paramsreq.query
    • req.params 用于获取路由中的动态参数:
      app.get('/product/:id', (req, res) => {
       const productId = req.params.id;
       res.send(`Product ID: ${productId}`);
      });
      
      JavaScript
    • req.query 用于获取查询字符串参数:
      app.get('/search', (req, res) => {
       const query = req.query.q;
       res.send(`Search query: ${query}`);
      });
      
      JavaScript
  5. app.listen()
    • 用于启动服务器并监听指定端口:
      app.listen(3000, () => {
       console.log('Server is running on http://localhost:3000');
      });
      
      JavaScript
  • 拓展
    • 结合环境变量设置动态端口:
      const PORT = process.env.PORT || 3000;
      app.listen(PORT, () => {
         console.log(`Server is running on port ${PORT}`);
      });
      
      JavaScript

总结

Express 提供了一系列简单易用的函数,用于定义路由、处理请求和发送响应。这些函数不仅功能强大,还可以灵活组合来实现复杂的应用逻辑。开发者熟练掌握这些常用函数后,可以快速构建 Web 应用或 API 服务。

发表评论

后才能评论