Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用node.js和Express向google api发出请求?获取请求未定义错误_Javascript_Json_Node.js_Express_Google Api - Fatal编程技术网

Javascript 如何使用node.js和Express向google api发出请求?获取请求未定义错误

Javascript 如何使用node.js和Express向google api发出请求?获取请求未定义错误,javascript,json,node.js,express,google-api,Javascript,Json,Node.js,Express,Google Api,我正在node.js服务器上工作,想调用Google购物服务并检索搜索查询结果。我认为我正确地应用了搜索查询字符串,但我得到了一个500引用错误:未定义请求。我的代码如下: googleShoppingService.js //Shopping Search Factory module.exports = function(productSearch){ return new productKey('---API-KEY-GOES-HERE---'); }; //constructo

我正在node.js服务器上工作,想调用Google购物服务并检索搜索查询结果。我认为我正确地应用了搜索查询字符串,但我得到了一个500引用错误:未定义请求。我的代码如下:

googleShoppingService.js

//Shopping Search Factory

module.exports = function(productSearch){
    return new productKey('---API-KEY-GOES-HERE---');
};
//constructor

function productKey(key) {

    this.key=key;
}
// Search API

function toJSON(str){
    var result;
    try {
        result=JSON.parse(str);
    } catch(err){}
    return result;
 }

productKey.prototype.search = function (req, done) {
    request.get('https://www.googleapis.com/shopping/search/v1/public/products')
        .send({key:this.key})
        .send({country:'US'})
        .send({q:req.body.searchQuery.value})
        .end(function (err, res) {
            var body = toJSON(res.text);
            var result = body && body.product || [];
            return done(err, result);
        });
};
app.js

var productSearch = require('./apis/googleShoppingSearch.js');
var products = productSearch('---API-KEY-GOES-HERE---')

app.get('/productResults', function(req, res){
    products.search(process.argv[2], function (err, results) {
        var returnedData = ""
        for (var i=0;i < results.length; i++) {
            returnedData += (results[i].title + '<br />')
        }
        res.send (returnedData)
    });
});
var-productSearch=require('./api/googleShoppingSearch.js');
var products=productSearch('--API-KEY-GOES-HERE---')
app.get('/productResults',函数(req,res){
产品.搜索(process.argv[2],函数(err,results){
var returnedData=“”
对于(var i=0;i)
}
res.send(返回数据)
});
});

任何解决我问题的建议都将不胜感激。提前感谢您的帮助。

修复了请求未定义的问题。但现在它没有给出任何结果。当回调指示错误时,如何实际报告错误?我将在以后的迭代中这样做。谢谢