我正在尝试从 connect-mongo 会话集合中手动删除一个文档。当我尝试删除文档时,出现以下错误:
消息:'在路径“_id”处,值“gl9-V-bjAjqv2Nwdf9vHPLN_Fnnl4Thz”的值转换为 ObjectId 失败'
express-session 使用以下函数生成会话 id:
function generateSessionId(sess) {
return uid(24);
}
从此函数生成的会话将进入会话文档的 _id 属性。但是,当您尝试通过生成的 id 查找或删除文档时,您会收到错误消息。
mongodb 文档说 _id 应该是
ObjectId 是一个 12 字节的 BSON 类型 ObjectId
我尝试使用会话上的 genid 选项覆盖会话 ID,但覆盖并没有使其进入数据库。
如何在文档中获取有效的 _id 或使用无效的 _id 查询文档?
谢谢!
我的基础架构:Express 4.10、Node v0.12.7、Compose.io、connect-mongo、express-session