我正在尝试创建 REST 服务,该服务通过 hapi.js 从数据库返回数据作为响应。
我正在使用乏味的方法执行 SQL 查询,我想将结果格式化为 JSON 或 XML,并将它们作为 hapi 请求的响应返回。请注意,这不是单调乏味的,我可以在任何数据库中遇到相同的问题。Tedious 有一个回调,每次从结果集中接收到新行时都会调用该回调:
sqlRequest.on('row', function (columns) {
fnOutput(columns[0].value);
});
这是一列输出的最简单示例。fnOutput 是一个自定义函数,它接受应该返回的文本。它可以连接结果并将它们格式化为将返回给客户端的 JSON。
我正在逐行获取,我想将行中的值连接起来并通过 hapi 将它们返回给客户端。如何将部分结果连续发送到响应?
- 我不想连接此回调中的所有行,然后在查询完成时推送整个格式化的 JSON。我不知道我将拥有多少条记录,并且我想避免累积的大字符串。
- 如果我每次获得新行时都尝试在 fnOutput 中调用 reply(columns[0].value) ,那么当第二行返回时失败:“reply interface called two”
每次我在回调函数中获得新行时,是否有某种方法可以将此回调中的结果连续附加到 hapi.js 输出流?