我的Javascript范围中的奇怪错误

时间:2014-02-16 20:54:42

标签: javascript node.js debugging scope v8

我碰到了一个奇怪的错误,导出的函数完全忽略了传递的参数,而是生成了自己的参数。

我的代码如下:

exports.returnThumbs = function(req, res) {
    var params = '{}, {thumb: 1}';
    console.log(params);
    PictureService.find(params, function(err, response){
        if(err){
            res.send(err);
        } else {
            console.log(response);
            res.send(response, 'binary');
        }
    });
}

哪个电话:

// Finds Answer by Passed Parameters
exports.find = function(params, callback){
    console.log(params);
    PictureModel.find(params, function(err, response){
        if(err){
            console.log(err);
            callback({'error': 'Error retrieving answers'});
        } else{
            if(!response){
               callback({'error': 'There are no pictures from this user_id'});
            } else{
               callback(null, response); 
            }
        }
    });
}

这应该明确通过' {},{thumb:1}'作为参数,但console.log代替打印:{user_id:'缩略图'这很奇怪。无论我做什么,重命名,重构。它总是将其打印为参数。

1 个答案:

答案 0 :(得分:0)

我最终将它追溯到我的路由器。我不恰当地解析了请求。