У меня есть проект Firebase, который использует базу данных реального времени, и я пытаюсь настроить локальный эмулятор для тестирования. К сожалению, похоже, что Firebase-cli получает мой файл database.rules.json
. Это происходит даже после создания тестового проекта для решения этой конкретной c проблемы.
Позвольте мне дать вам некоторую информацию о моей настройке.
Я создал проект Firebase, но ничего не активировано. Я создал пустой каталог на своем локальном компьютере и запустил firebase init database
. В результате было создано несколько файлов:
.firebaserc
{
"projects": {
"default": "emulators-test-244be"
}
}
firebase.json
{
"database": {
"rules": "database.rules.json"
}
}
database.rules.json
(я изменил правила, чтобы заблокировать database)
{
"rules": {
".read": false,
".write": false
}
}
Когда я запускаю эмулятор, используя firebase emulators:start --only database
, консоль сообщает мне, что база данных успешно инициализирована. Однако, когда я захожу в http://localhost:9000/.inspect/coverage?ns=emulators-test-244be
для просмотра загруженных в настоящее время правил безопасности, он дает следующий результат:
{
"rules": {
".read": true,
".write": true
}
}
Очевидно, это прямо противоречит правилам, которые я установил в файле database.rules.json
.
Я заметил одну вещь: если я изменяю файл database.rules.json
во время работы эмулятора, я получаю следующий вывод из консоли:
i database: Change detected, updating rules for undefined...
Очевидно, это заставляет эмулятор создать новую базу данных с именем undefined
. Когда я от go до http://localhost:9000/.inspect/coverage?ns=undefined
, вывод правильно отражает то, что я установил в моем database.rules.json
файле.
Почему это происходит? Я неправильно настраиваю свой локальный проект Firebase? Или есть ошибка в интерфейсе командной строки Firebase? Я просмотрел документы Firebase, Stack Overflow и Google. Я ничего не нашел.
У меня есть версия инструментов firebase 8.4.3
.
ОБНОВЛЕНИЕ
После поиска проблем на firebase-tools
Репозиторий GitHub, похоже, это ошибка.
Ссылка здесь: https://github.com/firebase/firebase-tools/issues/2371