Простейшее обходное решение, использующее None
>>> def bar(b, data=None):
... data = data or []
... data.append(b)
... return data
...
>>> bar(3)
[3]
>>> bar(3)
[3]
>>> bar(3)
[3]
>>> bar(3, [34])
[34, 3]
>>> bar(3, [34])
[34, 3]
Ответ был прост. Я не знал о разрешениях по умолчанию для баз данных реального времени firebase. Разрешения по умолчанию:
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
{
"rules": {
".read": true,
".write": true
}
}
Но если я хочу попробовать выполнить http-запрос во время разработки, я могу изменить разрешения на:
{
"rules": {
".read": true,
".write": true
}
}
Вы можете изменить это в раздел базы данных firebase -> rules
Я получил ответ благодаря этому сообщению Отказано в разрешении Firebase
Установка разрешений на
{
"rules": {
".read": true,
".write": true
}
}
будет работать.
Однако лучший способ сделать это - аутентифицировать пользователей с помощью пакета Firebase Auth: пакет Firebase_Auth (даже если вы подпишете их анонимно), а затем использовать пакет Firebase_Database : Пакет Firebase_Database для загрузки данных в режиме реального времени.