【发布时间】:2020-11-19 17:55:25
【问题描述】:
我正在尝试为我正在处理的一个新项目测试 Hapi.js 我的目标是在我的 Hapi 服务器上触发一个请求,这个请求将在使用 Hapi 代理的远程服务器上触发另一个请求,并且响应将只是来自远程响应的特定属性
要对此进行测试,必须向 /api/type3/name 发出请求,这将调用对 GitHub 的 API 的 API 调用以获取用户对象
代码:
server.route({
method: 'GET',
path: '/api/type3/{name}',
handler: {
proxy: {
mapUri: function(request,callback){
callback(null,'https://api.github.com/users/'+request.params.name);
},
onResponse: function(err, res, request, reply, settings, ttl){
console.log(res);
reply(res);
},
passThrough: true,
xforward: true
}
}
});
上述代码的响应是来自GitHub的响应对象 现在我需要保存这个响应,以便我可以操纵它并只返回我需要的内容
但是当我调试响应对象时,它包含大量数据,我无法在其中找到响应负载
那么如何从响应对象中只提取来自 GitHub 的响应呢?
非常感谢
【问题讨论】:
-
在启动节点进程之前设置 NODE_DEBUG 环境变量,以了解更多是否仍然看不到响应缓冲区。例如``` export NODE_DEBUG=http,stream,net``` 或者只是http日志
export NODE_DEBUG=http
标签: javascript node.js hapijs