为什么我对Goodreads API的请求返回undefined?

时间:2014-04-13 16:54:12

标签: node.js http request npm

以下是我在NPM中如何使用请求模块的简短示例。它返回undefined,我相当肯定我正确使用xml2js。我是否滥用了这种形式'请求模块中的选项将值传递给Goodreads API?谢谢!

var req = require('request');

var resp = req.get('https://www.goodreads.com/book/isbn_to_id', {form:{
    'key' : '*****************',
    'isbn' : '9780060513030'
}});

var parseString = require('xml2js').parseString;

parseString(resp, function (err, result) {
    console.dir(result);
});

1 个答案:

答案 0 :(得分:2)

这是一个基于回调的异步API,而不是承诺或常规返回值。

var req = require('request');
var parseString = require('xml2js').parseString;

req.get('https://www.goodreads.com/book/isbn_to_id', {form:{
    'key' : '*****************',
    'isbn' : '9780060513030'
}}, function (error, response, body) {
  //error handling goes here!
  parseString(body, function (err, result) {
    //error handling goes here, too!
    console.dir(result);
  });
});