reactjs React中的Firebase AppCheck v8:400错误“应用程序ID无效:“未定义”,

thtygnil  于 2023-03-17  发布在  React
关注(0)|答案(1)|浏览(91)

我一直在尝试在我的Firebase项目上实现appCheck。我遵循Firebase文档并检查了一堆StackOverflow文章,但似乎无法使其正常工作。我得到了一个“400:当尝试使用appCheck时出现“Bad Request”错误,它告诉我我的应用ID无效(“undefined”)。没有appCheck时,应用工作正常。我只在localhost上实现/测试了此错误(尚未尝试部署),并且我也设置了调试令牌。
添加appCheck时出现错误

我目前所做的:
1.使用密钥创建了新的reCaptcha v3站点
1.在Firebase中添加/注册密钥
1.导入的应用检查库
1.使用reCaptcha密钥初始化和激活应用程序检查
1.添加了自己。防火墙_应用检查_调试_令牌=真;到索引. html
1.已将调试标记添加到Firebase
任何指示将不胜感激!

import { firebase } from "@firebase/app";
import 'firebase/auth';
import "@firebase/auth";
import "@firebase/storage";
import "firebase/firestore";
import "firebase/app-check";

const firebaseKey = process.env.REACT_APP_FIREBASE_API_KEY;
const firebaseProjectId = process.env.REACT_APP_FIREBASE_PROJECT_ID;
const firebaseAuthDomain = process.env.REACT_APP_FIREBASE_AUTH_DOMAIN;
const firebaseStorageBucket = process.env.REACT_APP_FIREBASE_STORAGE_BUCKET;
const recaptchaKey = process.env.REACT_APP_RECAPTCHA_KEY;

const options = {
  apiKey: firebaseKey,
  authDomain: firebaseAuthDomain,
  projectId: firebaseProjectId,
  storageBucket: firebaseStorageBucket,
};

const client = firebase.initializeApp(options);

const appCheck = firebase.appCheck(client);
appCheck.activate(recaptchaKey, true);

export default client;
export { firebase };

这是我的index.html文件中的内容:

<body>
    <noscript> You need to enable JavaScript to run this app. </noscript>
    <script>
      if (window.location.hostname === "localhost")
        self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    </script>
    <div id="root"></div>
  </body>
kx5bkwkv

kx5bkwkv1#

在我的例子中,我在我的firebase配置对象中定义appId时有一个打字错误。
我发现您的中缺少appId属性。添加该属性应可修复此错误。

const options = {
  apiKey: firebaseKey,
  authDomain: firebaseAuthDomain,
  projectId: firebaseProjectId,
  storageBucket: firebaseStorageBucket,
  appId: 'your app id from firebase console'
};

相关问题