【发布时间】:2019-10-21 15:15:42
【问题描述】:
如何调整 Hapi 回复功能,使其仅回复 JSON 对象? 我应该把它简单地发送并发送吗?好像没找到好例子
这是一些编辑 - 添加了一些示例代码以了解正在发生的事情。
路线:
server.route({
method: 'GET',
path: '/user/',
handler: function (request, reply) {
var ids = null;
mysqlConnection.query('SELECT ID FROM Users;',function(err,rows,fields){
if(err) throw err;
ids = rows;
// console.log(ids);
reply(ids);
});
}
});
回复:
<html><head></head><body>
<pre style="word-wrap: break-word; white-space: pre-wrap;">[{"ID":1},{"ID":2},{"ID":3},{"ID":4},{"ID":5},{"ID":6},{"ID":7},{"ID":8},{"ID":9},{"ID":10},{"ID":11},{"ID":12},{"ID":13},{"ID":14},{"ID":15},{"ID":16},{"ID":17},{"ID":18},{"ID":19},{"ID":20},{"ID":21}]
</pre></body></html>
【问题讨论】:
-
旁注。没有“JSON 对象”。 JSON 始终是一个字符串。你可以通过解析把它变成一个对象。在那之后,它不再是 JSON。
-
我猜?您的浏览器正在转换 JSON 以进行显示。 Hapi 应该返回一个 JSON 字符串,如图所示。
-
是的,浏览器把它包起来了……