Я пытаюсь загрузить JSON-объект в Google Firestore.
При установке объекта в документ Firestore, мой код выдает следующую ошибку:
Error: Value for argument "data" is not a valid Firestore document.
Cannot use "undefined" as a Firestore value
(found in field audit.`20`.requests.`0`.lrEndTimeDeltaMs).
Теперь первым деломЯ сделал запись объекта непосредственно перед загрузкой, чтобы проверить неопределенные значения:
console.log(JSON.stringify(resultsToUpload));
return database
.collection("foo1")
.doc("bar1")
.set(resultsToUpload);
Мало того, что все значения определены в объекте, но упомянутое поле audit.`20`.requests.`0`.lrEndTimeDeltaMs
даже не существует:
resultsToUpload = {
"audit":{
"20":{
"ronaldScore":3,
"id":"network-requests",
"requests":[
{
"url":"https://www.example.com/",
"startTime":0,
"endTime":62.16699999640696,
"transferSize":15794,
"resourceSize":78243,
"statusCode":200,
"mimeType":"text/html",
"resourceType":"Document"
}
]
}
}
}
Данные получены из аудита Lighthouse Google.
При вычислении длины строки UTF-8 для строковых объектов JSON получается размер 30 МБ.
1) Всезначения определены (некоторые являются нулевыми, что не должно быть проблемой).
2) Упомянутое поле даже не существует в JSON.
Мой вопрос: как это может произойти?Как поле может просто появиться?Также: Как бы я решил эту проблему?