web-dev-qa-db-fra.com

Importer un fichier JSON en utilisant mongimport, continuez à obtenir un "identifiant inattendu"?

J'essaie d'ajouter un fichier JSON à mongodb en utilisant mongoimports à partir du terminal, ici:

 mongoimport --db my_db --collection my_collection --file /content/2_read.json

Je continue de recevoir JavaScript execution failed: SyntaxError: Unexpected identifier J'ai exécuté mon JSON via JSON Lint: http://jsonlint.com/ qui dit que c'est du JSON valide.

Je ne sais pas ce qui pourrait déclencher le processus d'importation ?? Ou comment enquêter davantage pour traquer le problème?

[~ # ~] mise à jour [~ # ~]

  1. Quelqu'un a suggéré de tout mettre sur une seule ligne. Une suggestion décente. Je l'ai essayé et cela n'a pas fonctionné.
  2. J'ai essayé d'importer un fichier json très très simple nommé simple.json avec le contenu {'content' : 'simple'} Mais j'obtiens toujours la même erreur en utilisant mongoimport. (Je peux ajouter des documents à partir de mongo Shell très bien.)

Un échantillon du JSON est ci-dessous.

2_read.json

{
  "name" : "John",
  "tasks" : [
      {
       "ix" : "1",
       "description" : "description of task",
       "tags": []
      }, 
     {
      "ix": "2",
      "description" : "description of task",
      "tags" : []
     }
       ]
}

Merci.

29
cathy.sasaki

Répondre à ma propre question parce que débutants complets appréciera l'erreur et pourra la rencontrer au début.

mongoimport est utilisé à partir du terminal, PAS dans le shell mongo. Tout comme vous n'utilisez pas npm dans node. ;RÉ

Après avoir compris mon erreur conceptuelle, j'avais besoin de --jsonArray comme indiqué par @WiredPrairie dans les commentaires.

125
cathy.sasaki

La commande suivante du terminal a bien fonctionné pour moi:

mongoimport -d my_db -c my_collection < /content/2_read.json --batchSize 1
0
Enamul Hassan