【问题标题】:koa.js basic app always returns Not Foundkoa.js 基本应用程序总是返回 Not Found
【发布时间】:2017-12-18 12:32:05
【问题描述】:

我正在尝试编写我的第一个 koa.js 应用程序,但由于某种原因,我无法使用函数设置路由。我不断收到“未找到”错误。

这是我的代码 -

const koa    = require('koa'),
      router = require('koa-router')();

var app = new koa();

router.get('/', function *(next) {
    this.body = "Hello"
});

app
  .use(router.routes())
  .use(router.allowedMethods());

app.listen(3000);
console.log("Listening on port 3000");

此代码基于 koa-router github 示例

然后当我去 localhost:3000 我得到“未找到”

我错过了什么? 谢谢

【问题讨论】:

  • 您是否尝试在进行更改后杀死并重新启动应用程序?
  • 来吧,当然。话虽如此,如果这是一个非常愚蠢的错误,我不会感到惊讶,就像你建议的那样......

标签: javascript node.js koa


【解决方案1】:

现在函数生成器在 koa2 中已弃用。使用的代码如

const koa = require('koa'),
router = require('koa-router')();

var app = new koa();

router.get('/', function(ctx, next) {
 ctx.body = "Hello"
});

app.use(router.routes()).use(router.allowedMethods());

app.listen(3000);
console.log("Listening on port 3000");

【讨论】:

    【解决方案2】:

    我遇到了同样的错误,但我发现也许这是最简单的方法。

    'strict'
    const koa = require('koa')
    const app =new koa()
    var route = require('koa-router');
    const host = 'localhost' || '127.0.0.1';
    const port = 3123 || process.env.PORT;
    
    // initiate the route
    var my_route = route();
    // defines the route
    my_route.get('/',function(body, next){
        body.body = "I love routes"
    });
    app.use(my_route.routes())
    app.listen(port, host,(err)=>{
        if(err){
            throw err;
        }
        console.log("The server has started")
    })
    

    【讨论】:

      猜你喜欢
      • 2012-04-09
      • 2016-11-19
      • 1970-01-01
      • 1970-01-01
      • 2012-08-16
      • 2015-06-09
      • 2020-01-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多