如何在本地主机上使用Firebase运行Github身份验证

时间:2019-10-16 09:02:04

标签: javascript firebase github firebase-authentication localhost

我在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上进行身份验证时,登录弹出窗口会非常快速地打开和关闭,并且我完全没有响应。

请帮助

0 个答案:

没有答案