首页 > 解决方案 > 请求 JSON 文件内容的空 GET 响应 | koa2

问题描述

我是 koa2 的新手,我试图用 koa2 获取 JSON 文件的内容

app.use( async ( ctx ) => { 
  let url = ctx.request.url;
  if (url == "list") {
      let res = ctx.request.get('http://domain/hello.json');
      ctx.body = res.body;
  }
})

JSON 文件hello.json如下所示:

{"da": "1212", "dad": "12addsf12"}

我希望路由/list返回 的内容hello.json,但是响应为空。我该怎么办?

更新:更改以下代码行:

 let res = ctx.request.get('http://domain/hello.json');
 ctx.body = res.body;

至:

 let res = ctx.get('http://domain/hello.json');
 ctx.body = res;

你现在应该得到内容了。

标签: jsonnode.jskoakoa2

解决方案


Koa 本身不支持路由,只有中间件,你需要一个路由中间件,试试koa-router

你的应用看起来像

const route = require('koa-route')

app.use(route.get('/list', ctx => {
    // Route handling logic
});

另请注意,这是返回标头信息ctx.get的别名。ctx.request.get


推荐阅读