Convertir un JSON al formato de importación de MongoDB

Transforme un objeto o un array JSON en un archivo «JSON Lines» (un documento por línea), el formato que espera mongoimport. Puede generarse automáticamente un identificador _id en formato ObjectId para cada documento que aún no tenga uno.

Ejemplo:

Cómo funciona

Por defecto, mongoimport espera un archivo en formato JSON Lines: un documento JSON completo por línea, sin comas ni corchetes envolventes (a diferencia de un array JSON clásico). Pegue su array de objetos y haga clic en «Convertir»: cada objeto se convierte en una línea independiente, lista para el comando mongoimport --db=ma_base --collection=ma_collection --file=import-mongodb.json.

¿Por qué usar { "$oid": "..." } en lugar de ObjectId(...)?

ObjectId(...) es una notación de JavaScript utilizada en el shell de Mongo, pero no es JSON válido. La sintaxis { "$oid": "665f1a2b3c4d5e6f7a8b9c0d" } es el formato «MongoDB Extended JSON» que mongoimport reconoce oficialmente para representar un ObjectId en un archivo JSON estándar.

¿Qué ocurre si un documento ya tiene un _id?

Su _id existente se conserva tal cual, ya sea una cadena, un número o un objeto $oid: la herramienta solo genera un nuevo identificador para los documentos que no tienen ninguno, a fin de evitar cualquier conflicto con identificadores ya asignados desde la aplicación.

Procesamiento 100% local: la conversión se ejecuta íntegramente en su navegador; sus datos nunca se envían a un servidor.