繁体   English   中英

koa 中的 koa-router 路由错误

[英]wrong routing with koa-router in koa

我正在通过基本练习学习 Koa,但我无法使用从该页面获得的代码实现简单的路由,这就是我所做的:

var koa = require('koa');
var router = require('koa-router'); //require it
var app = new koa();
var ro = router();
//and we'll set up 2 routes, for our index and about me pages
ro.get('/hello', getMessage);

function *getMessage() {
    this.body = "Hello world!";
 };
app.use(ro.routes());
app.listen(8008);
console.log('Koa listening on port 8008');

我没有收到任何特定错误,因为应用程序使用命令node index.js运行,但我可以在我路由的页面中看到任何打印。

我的文件夹 myproyectoks 中只有 1 个文件,它是 index.js,这就是我正在工作的文件。

您需要的任何信息请问我:D,因为我可能会忘记一些东西。

这个例子已经过时了——Koa 中间件是基于 Promise 的,并且生成器函数将不再直接工作。 路由器文档建议采用以下形式:

const Koa = require('koa')
const Router = require('@koa/router')

const router = new Router()
router.get(
    '/hello', 
    ctx => ctx.body = 'Hello world!'
)

const app = new Koa()
app.use(router.routes())

app.listen(8008)

要注意其他差异,路由器模块是需要实例化的 class 并且上下文作为参数传递给请求处理程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM