# app.METHOD
路由 HTTP 请求,其中 METHOD 是请求的 HTTP 方法。
# 概要
app.METHOD(path, callback [, callback ...])
# 描述
路由 HTTP 请求,其中 METHOD 是请求的 HTTP 方法,如 GET、PUT、POST 等,小写。因此,实际的方法是 app.get()
、app.post()
、app.put()
等等。有关完整列表,请参见下面的 路由方法
。
# 参数
参数 | 描述 | 默认 |
---|---|---|
path | 调用中间件函数的路径;可以是以下任何一种:表示路径的字符串。 路径模式。 匹配路径的正则表达式模式。 以上任何一种组合的数组。例如,参见 路径示例。 | '/'(根路径) |
callback | 回调函数;可以是:一个中间件函数。 一系列中间件函数(以逗号分隔)。 一组中间件函数。 以上所有的组合。您可以提供多个回调函数,其行为类似于中间件,只是这些回调可以调用 next('route') 以绕过剩余的路由回调。您可以使用此机制对路由施加先决条件,然后如果没有理由继续当前路由,则将控制权传递给后续路由。当回调函数抛出错误或返回被拒绝的 Promise 时,next(err) 将被自动调用。由于 router 和 app 实现了中间件接口,您可以像使用任何其他中间件函数一样使用它们。例如,参见 中间件回调函数示例。 | 无 |
# 路由方法
Express 支持以下与 HTTP 同名方法对应的路由方法:
- checkout - copy - delete - get - head - lock - merge - mkactivity | - mkcol - move - m-search - notify - options - patch - post | - purge - put - report - search - subscribe - trace - unlock - unsubscribe |
API 文档仅针对最流行的 HTTP 方法 app.get()
、app.post()
、app.put()
和 app.delete()
有明确的条目。但是,上面列出的其他方法的工作方式完全相同。
要路由转换为无效 JavaScript 变量名的方法,请使用方括号表示法。例如,app['m-search']('/', function ...
。
如果
app.get()
之前的路径没有调用app.head()
,则除了GET
方法之外,还会为 HTTPHEAD
方法自动调用app.get()
函数。
方法 app.all()
不是从任何 HTTP 方法派生的,而是在指定路径为所有 HTTP 请求方法加载中间件。有关详细信息,请参阅 app.all
。
有关路由的更多信息,请参阅 路由指南
。
← app.listen app.param →