关键词搜索

源码搜索 ×
×

Express app.get 进行路由 Route 设置

发布2021-10-05浏览737次

详情内容

Basic routing

路由是指确定应用程序如何响应客户端对特定端点的请求,即 URI(或路径)和特定的 HTTP 请求方法(GET、POST 等)。

每个路由可以有一个或多个处理函数,当路由匹配时执行。

路由定义采用以下结构:

app.METHOD(PATH, HANDLER)

  • app 是 express 的一个实例。
  • METHOD 是一种 HTTP 请求方法,以小写形式表示。
  • PATH 是服务器上的路径。
  • HANDLER 是路由匹配时执行的函数。

看一段代码:

// All regular routes use the Universal engine
  server.get('*', (req, res) => {
    res.render(indexHtml, {
      req,
      providers: [{ provide: APP_BASE_HREF, useValue: req.baseUrl }],
    });
  });
    复制

    app.get(path, callback [, callback …])

    使用指定的回调函数将 HTTP GET 请求路由到指定路径。

    回调函数可以是下列类型:

    • 一个中间件函数
    • 一系列中间件函数(以逗号分隔)。
    • 一个中间件函数的数组
    • 以上所有的组合。

    你可以提供多个回调函数,它们的行为就像中间件,除了这些回调可以调用 next (‘route’) 来绕过剩余的路由回调。 您可以使用此机制对路由施加前提条件,然后在没有理由继续当前路由的情况下将控制权传递给后续路由。

    由于 router 和 app 实现了中间件接口,因此您可以像使用任何其他中间件功能一样使用它们。

    router.all(path, [callback, …] callback)

    这个方法就像 router.METHOD() 方法,除了它匹配所有 HTTP 方法(动词)。

    此方法对于为特定路径前缀或任意匹配映射“全局”逻辑非常有用。 例如,如果您将以下路由放在所有其他路由定义的顶部,则需要从该点开始的所有路由都需要身份验证,并自动加载用户。 请记住,这些回调不必充当 endpoints; loadUser 可以执行一个任务,然后调用 next() 继续匹配后续路由。

    router.all(’*’, requireAuthentication, loadUser)

    相关技术文章

    点击QQ咨询
    开通会员
    返回顶部
    ×
    微信扫码支付
    微信扫码支付
    确定支付下载
    请使用微信描二维码支付
    ×

    提示信息

    ×

    选择支付方式

    • 微信支付
    • 支付宝付款
    确定支付下载