go admin sdk忽略Firebase存储模拟器

r6vfmomb  于 2022-12-07  发布在  Go
关注(0)|答案(2)|浏览(127)

我正在尝试为我的firebase项目设置存储模拟器。我正在使用Go admin sdk。然而,尽管遵循了文档中的过程,它似乎被忽略了。
应用程序初始化:

func App(ctx context.Context) (*firebase.App, error) {
    opt := option.WithCredentialsFile("firebase-service-account.json")
    config := firebase.Config{
        StorageBucket: "<my-project-id>.appspot.com",
    }
    app, err := firebase.NewApp(ctx, &config, opt)
    if err != nil {
        return nil, fmt.Errorf("error initializing app: %v", err)
    }
    return app, nil
}

启动时加载的.env文件:

FIRESTORE_EMULATOR_HOST="localhost:8081"
FIREBASE_STORAGE_EMULATOR_HOST="localhost:9199"
GCLOUD_PROJECT="my-project-id"

我还尝试通过运行以下命令手动设置这些参数:export FIREBASE_STORAGE_EMULATOR_HOST="localhost:9199"export GCLOUD_PROJECT="my-project-id"中的一个或多个。
但是,当写入默认存储桶时,我的blob出现在实际的firestore控制台中进行存储,而不是存储模拟器中。
我从我的服务帐户json文件中提取了GCLOUD_PROJECT值,具体是project_id字段。还确认了9199是存储运行的端口。
除了设置那些FIREBASE_STORAGE_EMULATOR_HOSTGCLOUD_PROJECT之外,我还遗漏了什么吗?

fwzugrvs

fwzugrvs1#

变数名称为STORAGE_EMULATOR_HOST。
请参阅:https://pkg.go.dev/cloud.google.com/go/storage

hgncfbus

hgncfbus2#

这里,
你是正确的,你目前的设置应该已经足够了。我已经提交了an issue in the GO SDK Repo,以便这个问题可以得到解决。
与此同时,正如@mabg指出的,当前的修复方法是设置STORAGE_EMULATOR_HOST变量以及代码示例

相关问题