我在firebase上有一个应用,我想在此使用Github对用户进行身份验证。我将这个宽度设置为firebase SDK函数的宽度,但是当我在localhost上尝试时它不起作用。当然,它在实时应用程序上就像一种魅力。该应用是用Jekyll设置的,因此我使用干净的javascript。当我运行localhost时,我在Jekyll服务中使用docker镜像。部署时,我使用docker映像与Jekyll一起构建并部署_site文件夹。
我怀疑这与回调URL有关吗?在Firebase控制面板中启用github身份验证功能时,您将获得一个预定义的回调URL,例如
https://website.firebaseapp.com/__/auth/handler
放置在Github上客户端的设置中。我已经尝试在客户端设置中更改回调URL以匹配我的本地主机。
我的身份验证脚本
var provider = new firebase.auth.GithubAuthProvider();
provider.addScope('repo');
firebase.auth().signInWithPopup(provider).then(function(result) {
var token = result.credential.accessToken;
var user = result.user;
console.log(user.email);
var userImage = document.querySelector("#user-image");
var userPic = document.createElement("img");
userPic.src=user.photoURL;
userImage.append(userPic);
var userEmail = document.querySelector("#user-email");
userEmail.innerHTML = user.email;
}).catch(function(error) {
var errorCode = error.code;
var errorMessage = error.message;
var email = error.email;
var credential = error.credential;
// ...
});
我尝试将客户端回调URL设置为
http://192.168.99.100/__/auth/handler
但是当尝试在localhost上进行身份验证时,登录弹出窗口会非常快速地打开和关闭,并且我完全没有响应。
请帮助