共用方式為


Middleware interface

物件型中間件所實作的介面。

方法

onTurn(TurnContext, () => Promise<void>)

每次 Bot 收到新要求時呼叫。

方法詳細資料

onTurn(TurnContext, () => Promise<void>)

每次 Bot 收到新要求時呼叫。

function onTurn(context: TurnContext, next: () => Promise<void>): Promise<void>

參數

context
TurnContext

目前與使用者交談回合的內容。

next

() => Promise<void>

要呼叫 的函式,以繼續執行中間件鏈結中的下一個步驟。

傳回

Promise<void>

備註

如果您是最後一個中間件,呼叫 await next(); 會導致執行繼續執行鏈結中的下一個中間件或 Bot 主要邏輯。

您的中間件應該在呼叫 next()之前和/或之後執行其商業規則。 您可以省略呼叫 next()來縮短回合的進一步執行。

下列範例顯示簡單的記錄中間件:

class MyLogger {
    async onTurn(context, next) {
        console.log(`Leading Edge`);
        await next();
        console.log(`Trailing Edge`);
    }
}