Closed liangtongzhuo closed 6 years ago
路由用对了吗。
index.js
const Koa = require('koa');
const app = new Koa();
app.use(require('./controller/reply_controller').routes());
module.exports = app;
controller/reply_controller.js
const Router = require('koa-router');
const wechat = require('co-wechat');
const config = {
token: process.env.wechat_token,
appid: process.env.wechat_appid,
encodingAESKey: process.env.wechat_encodingAESKey
};
const router = new Router();
router.use(wechat(config).middleware(async (message, ctx) => {
return 'aaa';
}));
module.exports = router;
router.use('/path', wechat(config).middleware(async (message, ctx) => {
return 'aaa';
}));
是的,只要外面包裹 router.use(),中间件就不走的。 为了测试我放在根路径
router.use( wechat(config).middleware(async (message, ctx) => {
return 'aaa';
}));
router.use('/', wechat(config).middleware(async (message, ctx) => {
return 'aaa';
}));
@liangtongzhuo 这个koa-router的设计原因,没有匹配到任何路由的情况下,是不会执行use的中间件的,所以必须要指定一个路径。具体看这个 koa-router #257, 直接用use需要等koa-router 8之后才行。
@liangtongzhuo 这个koa-router的设计原因,没有匹配到任何路由的情况下,是不会执行use的中间件的,所以必须要指定一个路径。具体看这个 koa-router #257, 直接用use需要等koa-router 8之后才行。
谢谢啦
非常感谢你开源这个插件,我有一个问题如下
为什么,这个路由不走呢?