KoaJS:结束响应

KoaJS: Ending a response

我有一个简单的 koa 回显服务器:

var koa = require('koa');
var app = koa();

app.use(require('koa-trie-router')(app));

app.route('/echo/:word')
.post(function* (next) {
  this.response.body = { echo: this.params.word };
  yield next;
});

app.listen(3000);

当我卷曲那个终点时,我看到了这个:

* Connection #0 to host localhost left intact
{"echo":"hello"}%  

但我不知道如何通过 koa api 关闭该连接。如何完成回复?

koa 使用中间件模式。 yield next 用于转到请求处理程序的下一个中间件。由于您不再有中间件,因此在这种情况下您不应该 yield next。只需设置主体并让功能关闭。

只需使用:

app.route('/echo/:word')
.post(function* (next) {
     ctx.throw(401, { echo: this.params.word })
});