Firebase 管理 SDK - Python

Firebase Admin SDK - Python

最近 FB Admin SDK introduced for Python as well, and here is a repo with some samples

很高兴我可以使用凭据进行身份验证,最后我获得了 firebase_admin 身份验证,它也可以创建自定义令牌。但是它如何帮助请求 REST API 例如?我可以检索我的身份验证令牌并将其设置为授权 header 也许可以执行 API 请求吗?

您应该能够通过在您的凭据上调用 get_access_token() 方法来获取 OAuth 令牌,然后按照 here.[=14 所述将其传递给 REST API =]

但是,在 Python Admin SDK v1.0.0 中,返回的凭据不包含 Firebase 范围。因此,从凭据获得的 OAuth 令牌将无法轻松地与 REST API 一起使用。这是一个错误,将在未来的版本中解决。同时你可以使用以下技巧:

from firebase_admin import credentials

scopes = [
    'https://www.googleapis.com/auth/firebase.database',
    'https://www.googleapis.com/auth/userinfo.email'
]

cred = credentials.Certificate('path/to/serviceKey.json')
token = cred.get_credential().create_scoped(scopes).get_access_token().access_token
# Pass token to REST API

在未来的版本中,修复错误后,您将执行以下操作:

from firebase_admin import credentials

cred = credentials.Certificate('path/to/serviceKey.json')
token = cred.get_access_token().access_token
# Pass token to REST API