Pyrebase初始化报错:KeyError: 'databaseURL'问题求助
Pyrebase初始化报错KeyError: 'databaseURL'的解决方法
问题场景
尝试用Pyrebase实现Firebase邮箱密码登录功能,代码严格按照教程编写,但运行时触发以下错误:
File "c:\Users\sujit\Desktop\firebase\main.py", line 10, in <module> firebase = pyrebase.initialize_app(config) File "C:\Users\sujit\AppData\Local\Programs\Python\Python310\lib\site-packages\pyrebase\pyrebase.py", line 28, in initialize_app return Firebase(config) File "C:\Users\sujit\AppData\Local\Programs\Python\Python310\lib\site-packages\pyrebase\pyrebase.py", line 36, in __init__ self.database_url = config["databaseURL"] KeyError: 'databaseURL'
原因分析
Pyrebase的底层初始化逻辑强制要求配置字典中包含databaseURL字段——哪怕你不需要使用Firebase实时数据库功能,它也会尝试读取这个配置项,因此缺失该字段会直接抛出KeyError。
解决方案
获取项目的databaseURL
- 登录Firebase控制台,进入你的项目
sparkwebdevsujit - 左侧菜单选择「实时数据库」,复制页面显示的数据库URL(格式通常为
https://<项目ID>.firebaseio.com/) - 若尚未启用实时数据库,可直接使用
https://sparkwebdevsujit.firebaseio.com/作为占位URL
- 登录Firebase控制台,进入你的项目
修改配置字典
将databaseURL添加到你的config中,修改后的完整代码如下:
import pyrebase config = {'apiKey': "AIzaSyCIkjXwfFCXuWavGkiy39MEx8aG9QsRpxE", 'authDomain': "sparkwebdevsujit.firebaseapp.com", 'projectId': "sparkwebdevsujit", 'storageBucket': "sparkwebdevsujit.appspot.com", 'messagingSenderId': "2928150243", 'appId': "1:2928150243:web:cdee0458e5da8b3e8e27d6", 'databaseURL': "https://sparkwebdevsujit.firebaseio.com/"} # 新增databaseURL配置 firebase = pyrebase.initialize_app(config) auth = firebase.auth() email = input("email : ") password = input("password : ") auth.sign_in_with_email_and_password(email,password)
验证
添加配置后重新运行代码,即可正常完成Firebase初始化并执行邮箱密码登录逻辑。
内容的提问来源于stack exchange,提问作者Sujit Akulwar
相关产品推荐
相关产品推荐

