13

Express ミドルウェアを実装する既存のコードがあります。このミドルウェアを Koa アプリケーションで使用するにはどうすればよいですか?

app.use(expressMiddleware)Koa アプリでミドルウェアを使用するために呼び出そうとすると、Koa はジェネレーター関数が必要であると不平を言います。

AssertionError: app.use() requires a generator function

ですから、ここにはある種のアダプターまたはトリックが必要だと思います...アイデアはありますか?

4

3 に答える 3

6

koa は Express ミドルウェアと互換性がありません。(詳細な説明については、このブログ投稿を参照してください。特に、「より優れたミドルウェア」の部分を参照してください)。

コアのミドルウェアを書き直すことができます。koa wiki には、ミドルウェアを作成するための特別なガイドがあります。

Express ミドルウェアで受け取る と は、koa ミドルウェアでは直接利用できませreqん。resただし、とを介して koaリクエストオブジェクトとkoaレスポンスオブジェクトにアクセスできます。this.requestthis.response

于 2014-09-16T00:54:10.283 に答える