MiddlewareSet class
一组 Middleware 插件。
注解
集本身是中间件,因此可以轻松打包一组中间件,这些中间件可以组合成具有单个 adapter.use(mySet) 调用的适配器,甚至可以使用 set.use(mySet)将中间件集打包到另一个中间件集中。
const { MiddlewareSet } = require('botbuilder');
const set = new MiddlewareSet();
set.use(async (context, next) => {
console.log(`Leading Edge`);
await next();
console.log(`Trailing Edge`);
});
构造函数
| Middleware |
创建新的中间件集实例。 |
方法
构造函数详细信息
MiddlewareSet((context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[])
创建新的中间件集实例。
new MiddlewareSet(middlewares: (context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[])
参数
- middlewares
-
(context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]
要注册的一个或多个中间件处理程序。
方法详细信息
onTurn(TurnContext, () => Promise<void>)
处理传入活动。
function onTurn(context: TurnContext, next: () => Promise<void>): Promise<void>
参数
- context
- TurnContext
(xref:botbuilder-core。此轮次的 TurnContext) 对象。
- next
-
() => Promise<void>
委托调用以继续机器人中间件管道。
返回
Promise<void>
表示异步操作的 Promise。
run(TurnContext, () => Promise<void>)
连续执行一组中间件。
function run(context: TurnContext, next: () => Promise<void>): Promise<void>
参数
- context
- TurnContext
与用户的当前会话轮次的上下文。
- next
-
() => Promise<void>
在中间件链末尾调用的函数。
返回
Promise<void>
在处理程序链完成后解析的承诺。
use((context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[])
向集注册中间件处理程序(s)。
function use(middlewares: (context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]): this
参数
- middlewares
-
(context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]
要注册的一个或多个中间件处理程序。
返回
this
更新后的中间件集。
注解
本示例将新的中间件添加到集:
set.use(async (context, next) => {
console.log(`Leading Edge`);
await next();
console.log(`Trailing Edge`);
});