繁体   English   中英

如何修复 Firebase_Admin 错误类型错误:__init__() 得到了一个意外的关键字参数“状态”

[英]How to fix Firebase_Admin Error TypeError: __init__() got an unexpected keyword argument 'status'

我是 Firebase 的新手,我正在在线学习他们的教程。 我正在尝试对我用几条记录创建的快速数据库进行身份验证。 我收到错误:TypeError: init () got an unexpected keyword argument 'status'

我已经确保我的 urllib3 是最新的,并确认我的 firebase_Admin 是最新的。 我已经检查了 json 文件的文件路径并将我的数据库 URL 复制到其中。

import firebase_admin
from firebase_admin import credentials
from firebase_admin import db

#Generated from settings of a project.
cred = credentials.Certificate(r"Path to json file in the same directory as program")

firebase_admin.initialize_app(cred, {'databaseURL': 'https://mydatabase_from_firebase/'} )

我期待返回 0,确认它有效,但我得到以下错误结果:

TypeError: __init__() got an unexpected keyword argument 'status'

完整的回溯是:

回溯(最近一次调用):文件“C:/Users/Gaming/Firbase_setup/test.py”,第 3 行,来自 firebase_admin 导入数据库文件“C:\\Users\\Gaming\\Firbase_setup\\venv\\lib\\site-packages \\firebase_admin\\db.py”,第 33 行,来自 firebase_admin import _http_client 文件“C:\\Users\\Gaming\\Firbase_setup\\venv\\lib\\site-packages\\firebase_admin_http_client.py”,第 32 行,raise_on_status=False,backoff_factor= 0.5) TypeError: init () 得到一个意外的关键字参数 'status'

这是由于过时的 urllib3 包造成的。 我使用以下解决方案解决了此错误。 你也可以试试。

转到这个文件(从你给出的错误中得到这个)-> C:\\Users\\Gaming\\Firbase_setup\\venv\\lib\\site-packages\\firebase_admin_http_client.py

注释 firebase_admin_http_client.py 中的以下几行:

    #from requests.packages.urllib3.util import retry
    #DEFAULT_RETRY_CONFIG = retry.Retry(
    #connect=1, read=1, status=4, status_forcelist=[500, 503],
    #raise_on_status=False, backoff_factor=0.5)

还要在同一文件中更改init参数,如下所示:

def __init__(
        self, credential=None, session=None, base_url='', headers=None,
        retries=1):

将请求升级到当前版本2.22.0对我2.22.0

正如之前的答案所暗示的那样,某些库已经过时并可能导致此问题。

有时我会收到超时错误以便解决这个问题

init更改为以下代码

def __init__(
            self, credential=None, session=None, base_url='', headers=None,
            retries=DEFAULT_RETRY_CONFIG, timeout=DEFAULT_TIMEOUT_SECONDS):

卸载旧版本的请求

pip uninstall requests

并安装最新的

pip install requests

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM