我想检查正确的 ObjectID 以继续我的代码。我在使用 NodeJS,但我不想收到错误消息:
Error: Argument passed in must be a single String of 12 bytes or a string of 24 hex characters
实际上我得到了那些测试:
if (!user.id || !user.id.match("/^[0-9a-fA-f]{24}$") || !typeof(user.id) === 'string') {
console.log("user id is required !")
return callback("user id is required !")
}
对于 24 个十六进制字符的字符串,我得到了这个正则表达式:
!user.id.match("/^[0-9a-fA-f]{24}$")
我正在搜索检查它是否是一个 12 字节的字符串:
!typeof(user.id) === 'string'
这12个字节应该如何添加校验?
有什么想法吗?
最佳答案
如果您使用 NodeJS:
const objectID = require('mongodb').objectID
您可以像那样简单地测试您的 ObjectID :
ObjectID.isValid(yourobjectid)
如果有效则返回true,否则返回false。
关于javascript - 我如何检查它是否是 12 字节的字符串对象,mongodb 中的 ObjectID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46422076/