Express 面试题
目录

Express 中如何匹配请求路径?

· 约 3 分钟读完 · 第 31 / 120 章

推荐答案

在 Express 中,可以使用 app.use()、app.get()、app.post() 等方法来匹配请求路径。这些方法允许你定义路由处理程序,以便在特定路径上处理 HTTP 请求。

例如:

本题详细解读

1. 基本路径匹配

在 Express 中,路径匹配是通过路由方法(如 app.get()、app.post() 等)来完成的。这些方法的第一个参数是路径字符串,第二个参数是处理请求的回调函数。

  • app.get('/'): 匹配根路径 /,当用户访问根路径时,会返回 "Hello, World!"。
  • app.get('/about'): 匹配 /about 路径,当用户访问 /about 时,会返回 "About page"。

2. 路径参数

Express 支持路径参数,路径参数是通过在路径中使用 : 来定义的。路径参数的值可以通过 req.params 对象访问。

  • app.get('/user/:id'): 匹配 /user/:id 路径,其中 :id 是一个路径参数。当用户访问 /user/123 时,req.params.id 的值将是 123,并且会返回 "User ID: 123"。

3. 通配符匹配

Express 还支持通配符 * 来匹配任意路径。例如:

  • app.get('/user/*'): 匹配所有以 /user/ 开头的路径,例如 /user/profile、/user/settings 等。

4. 正则表达式匹配

Express 还支持使用正则表达式来匹配路径。例如:

  • app.get(/.*fly$/): 匹配所有以 fly 结尾的路径,例如 /butterfly、/dragonfly 等。

5. 中间件路径匹配

app.use() 方法也可以用于路径匹配,通常用于加载中间件。例如:

  • app.use('/admin'): 匹配所有以 /admin 开头的路径,并在处理请求之前执行中间件函数。

通过这些方法,Express 提供了灵活且强大的路径匹配机制,能够满足各种复杂的路由需求。