如何从AuthBlockingEvent数据类firebase云函数中提取event_type

问题描述 投票:0回答:1

我想从事件中提取所使用的关联登录方法,例如 Google 或电子邮件/密码。

鉴于此处的 Google 文档用于获取用户和上下文信息,某些字段在

AuthBlockingEvent
数据类上不可用。

例如我可以提取以下内容:

from firebase_functions import https_fn, identity_fn, options

@identity_fn.before_user_signed_in()
def handle_user(
    event: identity_fn.AuthBlockingEvent,
) -> identity_fn.BeforeSignInResponse | None:
    email = event.data.email
    uid = event.data.uid
    event_id = event.event_id
    event_type = event.credential

但是,偶数签名上确实存在以下内容。

from firebase_functions import https_fn, identity_fn, options

@identity_fn.before_user_signed_in()
def handle_user(
    event: identity_fn.AuthBlockingEvent,
) -> identity_fn.BeforeSignInResponse | None:
    event_type = event.event_type
    auth_type = event.auth_type
    resource = event.resource
    # etc

我还在官方存储库上提出了一个问题https://github.com/firebase/firebase-functions-python/issues/180

python firebase-authentication google-cloud-functions google-cloud-identity
1个回答
0
投票

我认为我能够从

additional_user_info.provider_id
获取我想要的信息,例如可以是
google.com
password
,具体取决于用户登录的方式

@identity_fn.before_user_signed_in()
def handle_user(
    event: identity_fn.AuthBlockingEvent,
) -> identity_fn.BeforeSignInResponse | None:
    sign_in_provider = event.additional_user_info.provider_id
© www.soinside.com 2019 - 2024. All rights reserved.