2016-08-18 4 views
2

Я установил правила, чтобы только пользователи из белого списка могли читать базу данных. Все работает отлично для пользователей с белым списком. Тем не менее, я не мог понять, как обращаться с другими случаями, особенно с проверенными пользователями, которые не находятся в «белом списке». Поскольку они не соответствуют правилам безопасности, прослушиватель .on ('value') не запускается, и он также не вызывает никаких исключений. Прошу проинвестировать меня, как обнаружить пользователей, прошедших проверку подлинности, без разрешения на чтение.Как поймать отказ разрешений на чтение в Firebase с помощью js web API

ответ

3

Метод on() принимает так называемый «отклик обратного вызова», который вызывается, когда пользователь не имеет (или не имеет) разрешения на прослушивание в местоположении. Из reference documentation for on():

cancelCallbackOrContext

Дополнительного

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

Таким образом, в большинстве случаев, использовать что-то вроде:

ref.on('value', function(snapshot) { 
    console.log(snapshot.val()); 
}, function(error) { 
    console.error(error); 
}) 
+0

Большое спасибо! –