Firebase Firestore get () считается как 3 вызова API - PullRequest
0 голосов
/ 12 октября 2018

На этой неделе я работал над простым приложением, чтобы научиться использовать Firestore, и я наблюдал за своими вызовами API на странице квот.Всю неделю я едва использовал 400 звонков, но внезапно сегодня количество сообщений превысило 50000.Теперь в моем Firestore всего 2 коллекции, а в одной коллекции только 8 документов.Так что данных не так много.Мое приложение все еще очень примитивно и может только собирать, и добавлять / обновлять документы только в одном из них.Я упоминаю все это, чтобы объяснить, что мое приложение мало что делает, поэтому было очень удивительно, когда я увидел использование.

Я начал копаться в отдельных вызовах и заметил, что при выполнении одного вызова:

let db = fire.firestore();
db.collection("tags").get()
.then( snapshot => {
  console.log(snapshot);
})
.catch( error => {
  console.log(error);
})

Счетчик вызовов API Cloud Firestore увеличен на 3. Нет пользовательских функций, нет правил базы данных, кроме

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read: if request.auth.uid != null;
      allow write: if request.auth.uid != null;
    }
  }
}

Я еще не смотрел на создание / обновление документов, нокто-нибудь знает, почему этот get () будет считаться как 3 вызова API?

Ответы [ 2 ]

0 голосов
/ 12 декабря 2018

Отказ от ответственности:

Я НЕ предлагаю, чтобы это решило вашу проблему с достижением более 50 000 вызовов API, однако я полагаю, что это, скорее всего, будет проблема, возникшая у вас в этой квоте.


Просмотр и редактирование данных вашего проекта через консоль Firestore будет учитываться для вашей общей Cloud Firestore API Calls квоты.

Снова вы можете не найтиэто полезно, но чаще всего пользователи будут тестировать свои приложения (будь то запуск аутентификации, запись нового значения для поля или облачная функция) во время наблюдения за изменением данных. Это приведет кнепоследовательная квота увеличивается, поскольку вы, по сути, читаете / пишете в двух местах одновременно.

Я рекомендую попробовать это, наблюдая за приложением only с инструкциями журнала, которые лучше всего описывают происходящие процессы.Если вы все еще видите странное увеличение квоты, к сожалению, оно находится в вашем коде , а не в Google.Надеюсь, это поможет!

0 голосов
/ 15 октября 2018

Если причина в правиле безопасности, попробуйте использовать следующее правило безопасности, пока приложение не будет в процессе разработки:

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write;
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...