我尝试使用下面的代码从客户端调用stackexchange api,它工作正常
HTTP.call("GET",questionsURL,{params:{site:"stackoverflow",key:key,function(e,res)
{
if(e)
{
console.log("error"+e);
}
else
{
//logic
}
});
当我尝试从服务器端调用相同的函数时,返回的是我尝试记录它并显示以下结果
服务器端代码是
var futt=new Future();
HTTP.call("GET", userDetailsURL,{params:{site:"stackoverflow",key:key}},function(error,result)
{
futt.return(result);
console.log(result));
});
return futt.wait();
这里有什么问题?任何人帮我吧
答案 0 :(得分:1)
看起来问题是api的流是gzip编码的。 (此处还记录了http://api.stackexchange.com/docs/compression)
除非您自己解压缩数据,否则无法通过此方法。
可能值得研究一个npm模块,它可以为您完成所有这些,例如:https://www.npmjs.org/search?q=stackexchange
看起来它们不允许未压缩的请求和& Meteor gzip解码结果