Следующий метод должен запросить в разговорном собрании запись с заданным ObjectID.
const mongodb = require('mongodb')
const ObjectID = mongodb.ObjectID
app.get('/getConversations', (req, res) => {
verifyUser(req, res, function(result) {
if(result !== "false") {
for(var i=0; i<result.conversations.length; i++) {
var objectid = new ObjectID(result.conversations[i].toString())
conversationCollection.findOne({_id: objectid}, function(res2) {
console.log(res2.members)
res.end(res2)
})
}
} else {
res.end("Error")
}
})
})
Объект результата имеет, например, следующие данные:
{
// ...
conversations: [ 5ccdc51d22399918b45b33d4,
5ccdc52322399918b45b33d6 ],
// ...
}
Проблема в том, что console.log(res2.members)
всегда выбрасывает TypeError: Cannot read property 'members' of null
. Запрос для метода findOne неверен. Я уже пробовал несколько вариантов:
conversationCollection.findOne({"_id": objectid}, function(res2)
conversationCollection.findOne({_id: new ObjectID(result.conversations[i].toString())}, function(res2)
conversationCollection.findOne({"_id": ew ObjectID(result.conversations[i])}, function(res2)
conversationCollection.findOne({"_id": result.conversations[i]}, function(res2)
Ничего не работает, и каждый вариант выдает одно и то же исключение nullpointer.