0

我尝试使用以下代码从客户端调用 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();

这里有什么问题?任何人请帮助我

4

1 回答 1

1

看起来问题是api的流是gzip编码的。(也记录在这里:http ://api.stackexchange.com/docs/compression )

除非您自己解压缩数据,否则无法通过此方法。

可能值得研究一个为您完成这一切的 npm 模块,例如:https ://www.npmjs.org/search?q=stackexchange

看起来他们不允许未压缩的请求和 Meteor gzip 解码结果

于 2014-07-06T20:41:55.670 回答