我刚开始构建chrome扩展,并尝试在chrome扩展中使用来自Web应用程序的Firebase身份验证
我想发生的事情:(如果这不是正确的方式,请告诉我)
-
用户在webapp中登录/注册
-
注册后,调用我的函数
createCustomToken
并将令牌返回给客户端
-
将令牌保存到chrome存储中,以便我的扩展可以对用户进行身份验证。
问题是:
当我调用函数时,我在控制台中得到的只是
{data: null}
而不是customToken。
Firestore函数代码
const {logger} = require("firebase-functions");
const {onRequest} = require("firebase-functions/v2/https");
const {onCall, HttpsError} = require("firebase-functions/v2/https");
const {initializeApp} = require("firebase-admin/app");
const {getAuth} = require("firebase-admin/auth");
const {getFirestore} = require("firebase-admin/firestore");
initializeApp();
exports.createToken = onCall((request) => {
const uid = request.auth.uid;
getAuth().createCustomToken(uid).then((customToken) => {
return customToken
})
.catch((error) => {
return error;
});
});
Webapp代码(Next.js)
// the code below is currently running onClick
const addMessage = () => {
const createToken = httpsCallable(functions, 'createToken');
createToken().then(result => {
console.log(result); >> the result in console is "data: null"
});
}