【问题标题】:Firebase on Spring Boot Default AppSpring Boot 默认应用程序上的 Firebase
【发布时间】:2018-08-22 23:37:38
【问题描述】:

我正在创建一个 JHipster 应用程序(Springboot + Angular),我需要集成 Firebase。

我已按照 firebase 文档上的说明进行操作,当我离线启动服务器时它可以完美运行。

但是当我在控制台中使用 jhipster aws 将服务器部署到 AWS 时,当我尝试调用使用 firebase SDK 的函数时,它会显示 Trying to login to firebase failed. Reason: FirebaseApp name [DEFAULT] already exists!

这种行为仅在我部署应用程序时发生,因为如果我从本地主机调用它,它会完美运行。

我的 pom.xml 上有这个

<dependency>
        <groupId>com.google.firebase</groupId>
        <artifactId>firebase-admin</artifactId>
        <version>6.3.0</version>
    </dependency>

    <dependency>
        <groupId>com.google.gms</groupId>
        <artifactId>google-services</artifactId>
        <version>3.1.1</version>
    </dependency>

我正在使用

初始化我的应用程序
try{
        InputStream serviceAccount = new ByteArrayInputStream(getFirebaseJson().getBytes(StandardCharsets.UTF_8));
        //FileInputStream serviceAccount = new FileInputStream("firebaseAuth.json");

        FirebaseOptions options = new FirebaseOptions.Builder()
            .setCredentials(GoogleCredentials.fromStream(serviceAccount))
            .setDatabaseUrl("https://seeu-soon.firebaseio.com/")
            .build();



        FirebaseApp.initializeApp(options);
        FirebaseDatabase.getInstance(FirebaseApp.getInstance()).setPersistenceEnabled(true);

    }catch(Exception e){
        log.debug("Trying to login to firebase failed. Reason: " + e.getMessage());
    }

【问题讨论】:

    标签: java firebase spring-boot jhipster


    【解决方案1】:

    我修好了。

    原来FirebaseApp.initializeApp(options);函数在环境部署到AWS Elastic Beanstalk时在api上执行过一次。

    我所做的是创建一个名为 FirebaseUtils 的类,它有一个 initiateFirebase() 过程,用于设置 FirebaseApp。

    一旦我在每次调用需要访问 firebase 的 API 时调用 initiateFirebase(),就会使用另一个范围内的新选项配置创建 FirebaseApp,我可以访问 Firebase。

    【讨论】:

    • 您是否也设法从前端执行身份验证,例如在 React JS 中?使用 Google 或 Facebook 登录怎么样?有一些样品会很棒
    猜你喜欢
    • 2019-06-07
    • 2019-12-16
    • 2017-01-02
    • 2015-06-06
    • 1970-01-01
    • 2018-09-24
    • 2021-03-20
    • 2015-05-02
    • 2018-09-21
    相关资源
    最近更新 更多