使用节点js创建Mongodb ObjectId时如何捕获错误

时间:2017-03-01 05:21:08

标签: javascript node.js mongodb mongoose

var criteria = Mongoose.Types.ObjectId(payloadData.skillId)

当我传递错误的Id时,会出现以下错误消息。

  

错误:未捕获错误:传入的参数必须是单个字符串   12个字节或24个十六进制字符串

1 个答案:

答案 0 :(得分:1)

mongo _id是12字节的BSON类型ObjectId

var mongoose = require('mongoose');

var id = '1111adda111';
// var id = payloadData.skillId;

console.log(mongoose.Types.ObjectId.isValid(id)); // false
var cond = mongoose.Types.ObjectId.isValid(id)

if (cond) {
    // do the required operation
} else {
    console.log('not a valid id');
}