Express MongoDB find () basado en el campo _id

Así que en mi aplicación Express, estoy tratando de encontrar () basado en mi campo _id.

Ver mi registro MongoDB a continuación.

{ "_id": { "$oid": "58c2a5bdf36d281631b3714a" }, "title": "EntertheBadJah", "subTitle": "Lorem ipsum dolor", "thmbNailImg": "", "headerImg": "", ... BLAH BLAH BLAH 

Cuando uso .find( _id: id ) , mi id param = 58c2a5bdf36d281631b3714a .

¿Cómo puedo convertir / usar esto para obtener mi registro MongoDB?

Aquí está mi llamada Express:

 //GET ARTICLE app.get('/api/article', (req, res) => { var id = req.query.id var article = []; db.collection('articles') .find( _id: id ) .then(result => { article = articles.concat(result); }).then(() => { res.send(article); }).catch(e => { console.error(e); }); }); 

Cualquier ayuda o consejo es apreciado. Gracias de antemano.

EDITAR: (mi consulta revisada)

 //GET ARTICLE app.get('/api/article', (req, res) => { var id = req.query.id db.collection('articles').findOne({ "_id.$oid": id }, function(err, article) { res.send(article); console.log(article) }); }); 

El artículo está devolviendo NULL.

 db.collection('articles') .find( {"_id.$oid": id} ) . 

O incluso más específico:

 db.collection('articles') .findOne( {"_id.$oid": id} ) . 

EDITAR:
Convertir cadena en tipo ObjectId antes de consultar

 var ObjectID = require('mongodb').ObjectID; db.collection('articles') .findOne( {"_id.$oid": new ObjectID(id)}) . 

Referencia: si tengo un ID de documento de Mongo como una cadena, ¿cómo lo busco como un _id?