Firebase Appcheck Golang Admin SDK 需要在其 API 中外部使用内部包

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

当前问题 在他们的 Github 上

首先,我认为关于如何将 AppCheck 与 Golang Admin SDK 一起使用的 Firebase 文档是错误的此处。它说您需要直接通过

appcheck.Client
的方法创建一个新的
firebase.App
,但此方法不存在(不再存在?)。

func main() {
    app, err := firebaseAdmin.NewApp(context.Background(), nil)
    if err != nil {
        log.Fatalf("error initializing app: %v\n", err)
    }

    appCheck, err = app.AppCheck(context.Background()) // <-- here
    if err != nil {
        log.Fatalf("error initializing app: %v\n", err)
    }

    http.HandleFunc("/yourApiEndpoint", requireAppCheck(yourApiEndpointHandler))
    log.Fatal(http.ListenAndServe(":8080", nil))
}

所以,我提到了 Firebase 的

appcheck
here 表示您现在需要通过此方法创建一个新实例:

func NewClient(ctx context.Context, conf *internal.AppCheckConfig) (*Client, error)

从理论上讲,这应该可行。但是,请注意使用

internal
模块。

我们可以尝试使用

NewClient(...)
,并且能够提供其第一个参数
context.Context
,但无法为其第二个类型为
*internal.AppCheckConfig
的参数提供值,因为它是内部的

有人能解决这个问题吗?或者,也许我忽略了执行此操作的正确方法。

谢谢。

firebase go firebase-admin firebase-app-check
© www.soinside.com 2019 - 2024. All rights reserved.