我有实现快速中间件的现有代码。如何在 Koa 应用程序中使用这个中间件?
当我尝试调用app.use(expressMiddleware)
以在我的 Koa 应用程序中使用中间件时,Koa 抱怨需要生成器函数:
AssertionError: app.use() requires a generator function
所以我想这里需要某种适配器或技巧......想法?
另外,您可以尝试 koa-connect:https ://github.com/vkurchatkin/koa-connect
它看起来很简单:
var koa = require('koa');
var c2k = require('koa-connect');
var app = koa();
function middleware (req, res, next) {
console.log('connect');
next();
}
app.use(c2k(middleware));
app.use(function * () {
this.body = 'koa';
});
app.listen(3000);
我在 npm 上为 koa2 创建了 koa2-connect。https://github.com/cyrilluce/koa2-connect
npm i koa2-connect -S
// usage same as koa-connect
因为koa-connect的作者还没有发布下一个版本(npm i koa-connect@next没用),并且不兼容webpack-dev-middleware和webpack-hot-middleware。