麻烦从node.js模块返回JSON

时间:2014-05-22 01:18:35

标签: javascript node.js

我正在尝试使用node.js模块从第三方API中检索一些数据。我认为将调用运行到一个模块并在应用程序main.js

中使用它会更清晰

当我尝试将值返回到我的app.js时,它是未定义的,这意味着我无法将数据分配给新的var。

这是我的模块konny.js(我也在使用请求模块)

var request = require('request');


function bResource () {
//byUnique gets  by unique ID, Returns assigned values
this.byUnique = function (var1, var2) {
    request.get( 
        { uri: 'http://mysiteapi/path/'+var1,
          headers: {
            'Content-Type' : 'application/x-www-form-urlencoded',
            'Api-Key': var2
        }
        },
        function callback (error, res, body) {
          if(res.statusCode == 200){

            return body;
          } else {
            console.log('error: '+ res.statusCode);
          }
        }
      );

  }
}

exports.properties = function() {
return new bResource();
}

这是我使用模块的app.js:

var konny = require('./konny.js');

var Id = 'MYID';
var key = 'MYKEY';


var foo = konny.properties().byUnique(Id, key);
console.log(foo);

foo回来未定义。如果我从byUnique函数控制日志,我会看到我的JSON响应吗?

0 个答案:

没有答案