使用客户端 SDK 时,Firebase AppCheck 给出 'appCheck is not a function'

Firebase AppCheck gives 'appCheck is not a function' when using the client SDK

我在项目中初始化 AppCheck 时遇到错误。

Firebase 版本:“^8.8.1”。

这是我的配置文件:

import firebase from "firebase/app";
import "firebase/functions";

const firebaseConfig = {
    apiKey: "--",
    authDomain: "--",
    projectId: "--",
    storageBucket: "--",
    messagingSenderId: "--",
    appId: "--"
};

const check = firebase.appCheck() // here is the error
check.activate('appCheckKey', true)

const app = firebase.initializeApp(firebaseConfig)
const functions = firebase.functions()

export {
    app,
    functions
}

请注意,我在这里使用的是虚拟数据,因为密钥是敏感信息。

这是我从 Webpack 得到的错误:

firebase.js?dc59:13 Uncaught TypeError: firebase_app__WEBPACK_IMPORTED_MODULE_0__.default.appCheck is not a function
    at eval (firebase.js?dc59:13)
    at Module../src/firebase.js (app.js:1173)
    at __webpack_require__ (app.js:849)
    at fn (app.js:151)
    at eval (SorteoForm.vue?0e40:55)
    at Module../node_modules/cache-loader/dist/cjs.js?!./node_modules/babel-loader/lib/index.js!./node_modules/cache-loader/dist/cjs.js?!./node_modules/vue-loader-v16/dist/index.js?!./src/components/SorteoForm.vue?vue&type=script&lang=js (app.js:938)
    at __webpack_require__ (app.js:849)
    at fn (app.js:151)
    at eval (SorteoForm.vue?a886:1)
    at Module../src/components/SorteoForm.vue?vue&type=script&lang=js (app.js:1149)

知道会是什么吗? 谢谢!

您需要导入类似于 Firestore 和函数的应用检查。

import firebase from "firebase/app";
import "firebase/functions";
import 'firebase/app-check';
// Import app-check ^


const check = firebase.appCheck();
check.activate('appCheckKey', true);

因为您使用的是版本 8(命名空间)- 将其作为脚本标记添加到您的头部:

https://www.gstatic.com/firebasejs/8.10.0/firebase-app-check.js