Я хочу проверить, существует ли ключ в базе данных Realtime. Я знаю, что я могу восстановить родительский .hasChild('theKey')
а затем использовать .hasChild('theKey')
чтобы проверить его, но родительский узел может быть массивным и загрузить все это может быть дорого.
Я также знаю, что я могу только запрашивать ключ из БД реального времени, и если он не существует, он выдает ошибку. Но этот метод не очень хорош для меня либо потому, что я не знаю, как убедиться, что возникшая ошибка связана с тем, что ключ не существует, а не, например, сетевая проблема или что-то еще.
И, кстати, я использую node.js в Firebase Functions для доступа к БД.
Вы можете использовать неглубокий параметр для проверки наличия ключа. Если данные существуют, он вернет либо значение (для примитивов), либо "true" (для объектов), а если оно не существует, оно вернет null.
Подробнее: https://firebase.google.com/docs/database/rest/retrieve-data#shallow