参数必须是一个字符串

时间:2017-09-20 17:08:28

标签: javascript node.js mongodb

我有一个非常简单的功能,可以找到所有预订系列。但它给出了一条错误信息。虽然,我将字符串值传递给新对象ID 以匹配 MongoDB 格式。它显示错误消息参数必须是字符串值。如果已使用控制台检查它显示一个字符串。如果我这样使用。

var clientID = new ObjectID(req.body.clientID).toString();

它会删除错误,但仍然找不到任何集合并返回空[]数组。

    app.post('/api/someFunction' ,function(req,response)
    {
        var clientID = new ObjectID(req.body.clientID);
        db=req.db;
        var collection=db.get('bookingscollections');
        collection.find
        (
            {'serviceProviderID':clientID},function(error,bookings)
            {
                if(error){
                    console.log(error); // Error
                    response.send(error)
                }
                else
                {
                    console.log(bookings); // if bookings
                    response.send(bookings);
                }
            }
        );
    }); 
  

TypeError:参数必须是字符串       在TypeError(本机)       在Buffer.write(buffer.js:771:21)

我想从下面提到的mongoDB中获取。

{"_id" : ObjectId("59c25185a32f0b188408fc97"),
    "serviceProviderID" : ObjectId("59afe299f62d6bec1a617bed"),
    "serviceBookerID" : "59b92c791602cf8018f2169b",
    "serviceBookerName" : "uemr Rasheed",
    "visitorPhone" : "+99(99)9999-9999"
}

0 个答案:

没有答案