# @adonisjs/middleware-base 中文文档

规范地址：https://npmcn.com/package/%40adonisjs/middleware-base/

版本：1\.0\.0
npm 元数据更新时间：2023-05-08T04:48:38.101Z
中文译文更新时间：2026-11-05T21:03:14.832Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40adonisjs/middleware-base
原文对照：https://npmcn.com/package/%40adonisjs/middleware-base/?lang=original
项目主页：https://github.com/adonisjs/adonis-middleware-base#readme
源码仓库：https://github.com/adonisjs/adonis-middleware-base

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：15.4 kB，5 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：5 个
- 首次发布：2018-03-15T18:07:44.704Z
- 最新版本发布：2018-03-15T18:07:44.818Z
- 近 30 天下载量：21688（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：1（近 12 个月 0 个）

## 中文简介

Http 和 Ws 服务器使用的中间软件基础

## 安装

```sh
npm install @adonisjs/middleware-base
```

也可以使用：`pnpm add @adonisjs/middleware-base`、`yarn add @adonisjs/middleware-base`、`bun add @adonisjs/middleware-base`

## README

# Adonis Middleware Base : 三相体 规则 :

这个repo包含了使中间软件与HTTP和Websocket服务器工作的代码. 如果您正在寻找通用的中间软件库, 请尝试 [组合](https://www.npmjs.com/package/co-compose)。 。 。 .

  

* * *

  

[![NPM Version](https://img.shields.io/npm/v/@adonisjs/middleware-base.svg?style=flat-square)](https://npmjs.org/package/@adonisjs/middleware-base) [![Build Status](https://img.shields.io/travis/adonisjs/adonis-middleware-base/master.svg?style=flat-square)](https://travis-ci.org/adonisjs/adonis-middleware-base) [![Appveyor](https://img.shields.io/appveyor/ci/thetutlage/adonis-middleware-base/master.svg?style=flat-square)](https://ci.appveyor.com/project/thetutlage/adonis-middleware-base) [![Coveralls](https://img.shields.io/coveralls/adonisjs/adonis-middleware-base/develop.svg?style=flat-square)](https://coveralls.io/github/adonisjs/adonis-middleware-base)

![](http://res.cloudinary.com/adonisjs/image/upload/q_100/v1497112678/adonis-purple_pzkmzt.svg)

## 使用量

```
const MiddlewareBase = require('@adonisjs/middleware-base')

const middleware = MiddlewareBase('handle')

// register global middleware
middleware.registerGlobal(['App/Middleware/BodyParser'])

await middleware
  .getGlobalAndNamed([])
  .params([ctx])
  .run()
```

## 类

[中间软件库](https://npmcn.com/package/%40adonisjs/middleware-base/#readme-MiddlewareBase)

## 职能

[注册全球( 中间软件)](https://npmcn.com/package/%40adonisjs/middleware-base/#readme-registerGlobal) ⇒ `void`

注册全局中件

[使用( 中间软件)](https://npmcn.com/package/%40adonisjs/middleware-base/#readme-use) ⇒ `void`

注册服务器类型中间软件

[注册名( 中间软件)](https://npmcn.com/package/%40adonisjs/middleware-base/#readme-registerNamed) ⇒ `void`

注册名为中间软件的对象

[编剧 Server ()](https://npmcn.com/package/%40adonisjs/middleware-base/#readme-composeServer) ⇒ `Runner`

编写服务器级别中间软件

[编写 GlobalAnd( 名参考)](https://npmcn.com/package/%40adonisjs/middleware-base/#readme-composeGlobalAndNamed) ⇒ `Runner`

将全球并命名为中间软件一起组成. 空传 当没有命名的中间软件应该是时的阵列 执行.

## 中间软件库

**仁爱**: 全球类  

### 新中件Base( 中件Fn, \[warnFn\])

MiddlewareBase 类是一个简单的抽象,写给 和AdonisJs的中间软件层合作.

Adonis 有全球、 命名和服务器中间软件, 略微 两者的差别 所以,这个班级理解一切 和报价 一个简单的抽象 围绕他们.

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| 中间软件Fn | `String` | 要调用到中件类的功能 |
| \[被警告\] | `function` |  |

## global( 中间软件) {} `void`

注册全局中件

**仁爱**:全球职能  
**掷出**数字 :

-   `InvalidArgumentException` 如果中间软件不是数组

| 参数 | 类型 |
| --- | --- |
| 中间软件 | `Array` |

**示例**

```js
middleware.registerGlobal([
  'Adonis/Middleware/BodyParser',
  'Adonis/Middleware/Session'
])
```

## 使用(中型软件) `void`

注册服务器类型中间软件

**仁爱**:全球职能  
**掷出**数字 :

-   `InvalidArgumentException` 如果中间软件不是数组

| 参数 | 类型 |
| --- | --- |
| 中间软件 | `Array` |

**示例**

```js
middleware.use(['Adonis/Middleware/Static'])
```

## 注册名( 中间软件) @% 1 `void`

注册名为中间软件的对象

**仁爱**:全球职能  
**掷出**数字 :

-   `InvalidArgumentException` 如果中间软件不是带有密钥/值对的对象 .

| 参数 | 类型 |
| --- | --- |
| 中间软件 | `Object` |

**示例**

```js
middleware.registerNamed({
  auth: 'Adonis/Middleware/Auth'
})
```

## 编剧 Server () QQ `Runner`

编写服务器级别中间软件

**仁爱**:全球职能  

## 编写 GlobalAnd( 名参考) @% `Runner`

将全球并命名为中间软件一起组成. 空传 当没有命名的中间软件应该是时的阵列 执行.

**仁爱**:全球职能

| 参数 | 类型 |
| --- | --- |
| 名称参考 | `Array` |

## 常见问题

### @adonisjs/middleware-base 是什么？

Http 和 Ws 服务器使用的中间软件基础

### 如何安装 @adonisjs/middleware-base？

在项目目录运行 npm install @adonisjs/middleware-base，或使用 pnpm add / yarn add / bun add。

### @adonisjs/middleware-base 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/adonisjs\_\_middleware-base 是否存在。

### @adonisjs/middleware-base 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @adonisjs/middleware-base 可以商用吗？

@adonisjs/middleware-base 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @adonisjs/middleware-base 的下载量有多少？

根据 npm 官方下载统计，@adonisjs/middleware-base 在 2026/10/05 – 2026/11/03 这 30 天内被下载 21,688 次，日均约 723 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @adonisjs/middleware-base 还在维护吗？

最新版本 1\.0\.0 发布于 2018/03/16（8 年前）；至今共发布 1 个版本，其中过去 12 个月发布了 0 个；首次发布于 2018/03/16。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

