Подтвердить что ты не робот

Firebase - недопустимые данные или значения JSON. Ключевые значения can not содержат $# []/или

Я пытаюсь импортировать мой файл JSON в свою Firebase, но он продолжает давать мне эту ошибку. Я не знаю, почему этот JSON файл не может быть импортирован, поскольку JSONLint говорит, что он является допустимым файлом JSON.

Здесь файл:

{
  "Featured" : {
      "artist" : "james turell",
      "artistEPK" : "artistsownepk.pdf",
      "author" : "john queue author",
      "date" : "7/28/2016",
      "fullScreenImg" : "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687",
      "linksToMedia" : [ "www.wallplay.com/project-name/james-t/press.html" ],
      "linksToPress" : [ "" ],
      "location" : "10 Main Street",
      "mainImg" : "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687",
      "pressImgs" : [ "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687", "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687", "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687" ],
      "pressRelease" : "projectpressrelease.pdf",
      "projectImgs" : [ "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687", "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687", "https://firebasestorage.googleapis.com/v0/b/wallplay-a8440.appspot.com/o/Screen%20Shot%202016-06-08%20at%2012.00.06%20PM.png?alt=media&token=1df5d60d-808c-48bb-a591-e005f82e4687" ],
      "projectSubheader" : "subheader of project",
      "projectTitle" : "title of project",
      "projectURL" : "",
      "soundFile" : [ ],
      "text" : "here there would be a text for james turell",
      "videoURL" : ""
    },
  "Future" : {

  },
  "Past" : {

  },
  "Present" : {

  }
}

проблема возникает при импорте json с помощью веб-интерфейса

введите описание изображения здесь

4b9b3361

Ответ 1

Я просто потратил некоторое время на это и нашел проблему для меня (и, вероятно, для многих других) при получении этого сообщения об ошибке. Похоже, что firebase может импортировать только файлы с кодировкой UTF-8 (без спецификации)

Мне показалось странным, поскольку я не мог повторно импортировать содержимое, которое я только что экспортировал.

Я пробовал все версии UTF 8, 16 с LE и BE с и без спецификации, только UTF-8 работает

Я хочу, чтобы у firebase не было этого обманчивого сообщения об ошибке

введите описание изображения здесь

Ответ 2

Две вещи, которые могут помочь кому-то сохранить пару часов царапин на голове:

1) Пустые строки являются действительными ключами JSON, они НЕ являются действительными ключами Firebase.

2) В то время как сообщение об ошибке веб-инструмента ужасно, инструмент командной строки фактически предоставляет полезную информацию, например, номер строки (хорошо, когда у вас есть файл линии 300K +)

например.

база данных firebase --project: set/import.json

чтобы перезаписать все из корня

Ответ 3

Это произошло со мной и имело совершенно другую причину: у меня были функции Firebase, которые запускались при добавлении данных в определенные коллекции. Инструмент с графическим интерфейсом дал мне бесполезную ошибку, которую получил OP. Но работая с CLI, я получил:

Error: HTTP Error: 400, This request would cause too many functions to be triggered.

Таким образом, ошибка действительно спасла мою шкуру, так как запуск функции для каждого из нескольких сотен узлов, которые я импортировал, был бы катастрофическим.

Чтобы решить эту проблему, я развернул код своего приложения с закомментированными функциями, а затем смог использовать графический интерфейс для импорта моих данных. Как только мои данные были введены, я откомментировал функции и снова развернул их.

Ответ 4

Мое имя файла было "что-то-что-то", т.е. оно имело символ "-" в имени файла. Изменение его на "something.json" решило проблему

Итак, у вас нет специальных символов в ваших файлах.

Ответ 5

JSON, который вы опубликовали, действителен для Firebase, поэтому проблема не в этом JSON. Это должно быть где-то еще в вашем приложении.

Ответ 6

если вы создали триггерную функцию много. Вы должны удалить сработавшие функции. Далее попробуйте еще раз. Этот способ работает для меня.

Ответ 7

Я только нашел еще одну причину, когда Firebase выдает эту ошибку:

Это была база данных, которую отказались загружать:

 {
            "S. No.": 2,
            "University Name": "Acharya Nagarjuna University, Guntur (Id: U-0003)",
            "College Name": "Abhinav Institute of Management & Technology (Id: C-39450)",
            "College Type": "Affiliated College",
            "State Name": "Andhra Pradesh",
            "District Name": "Prakasam"
          } 

Я думал об изменении ключевого имени "С. Нет." и это сработало.

{
            "S": 2,
            "University Name": "Acharya Nagarjuna University, Guntur (Id: U-0003)",
            "College Name": "Abhinav Institute of Management & Technology (Id: C-39450)",
            "College Type": "Affiliated College",
            "State Name": "Andhra Pradesh",
            "District Name": "Prakasam"
          } 

Firebase принимал более поздний формат (я думаю, что проблема была с. (Точка), сопровождаемая пробелом.) Я надеюсь, что это помогает !!!

Ответ 8

У меня похожая проблема с JSON, содержащим огромные данные. Я решил эту проблему с помощью инструмента импорта Firebase. У этого есть варианты для импорта к определенным узлам и т.д.