我试图在我的Firebase项目中创建一个登录页面,但是总是在我将参数发送给函数时返回“ Firebase未定义。这是我的代码:
<button id="login" onclick="signIn()"><Login</button>
函数signIn()仅将href更改为http://localhost:5000/signin/:email/:password
那我有这个
const functions = require('firebase-functions');
const adm = require('firebase-admin');
const express = require('express');
const signin = require('./modules/signin');
const firebase = require("firebase");
// // Create and Deploy Your First Cloud Functions
adm.initializeApp(
functions.config().adm
);
const app = express();
app.get('/signin/:email/:password', (request, response) => {
exports.signin = signin(request.params.email, request.params.password);
});
exports.app = functions.https.onRequest(app);
只有我的功能
function signin (email, password) {
firebase.auth().signInWithEmailAndPassword(email, password).then(function(user) {
// user signed in
console.log ("Usuário logado com sucesso!");
return True;
}).catch(function(error) {
var errorCode = error.code;
var errorMessage = error.message;
if (errorCode === 'auth/wrong-password') {
// alert('Wrong password.');
return false;
} else {
alert(errorCode+": "+errorMessage);
return false;
}
});
}
module.exports = signin;
im试图使用functions文件夹上的index.js作为一种“控制器”来在后端调用函数,但是我无法解决这个简单的问题。
答案 0 :(得分:4)
您不能在Cloud Functions中使用Firebase客户端SDK。 Cloud Functions被认为是后端代码,无法在浏览器上运行。如果要登录用户,则必须在浏览器代码中使用SDK,而不要在后端代码中使用。