如何处理小部件的谷歌登录

时间:2017-12-28 22:21:28

标签: javascript authentication widget social-authentication

我正在创建一个小部件。逃避我的部分是实施社交媒体认证。

小部件是通过嵌入式javascript完成的,并在页面上占用<div>而不是使用iframe。

我遇到的问题是我想避免重定向。不是因为我不想处理它们,而是因为我想让小部件尽可能友好。基本的谷歌登录按钮创建一个弹出窗口,处理身份验证客户端。它绝对适合我的用例,除了它需要client_id:

<script>
window.googleStart = function() {
  gapi.load('auth2', function() {
    auth2 = gapi.auth2.init({
      client_id: '639034356632-fgcp4bigtn908q2ev3qifl9vfqnsciuj.apps.googleusercontent.com',
      // Scopes to request in addition to 'profile' and 'email'
      //scope: 'additional_scope'
    });
  });
}
</script>

我可能错了,但我相信如果我在嵌入某人的网站时使用这种方法,我可能会覆盖他们的client_id并导致冲突,或者谷歌只会使第二次尝试失败并使用他们的client_id 。在任何一种情况下,我都不相信我应该做的事情。有没有办法在没有重定向的情况下设置客户端身份验证,这样我的小部件就不会干扰网站可能使用的google api?

我有一个使用重定向的方法并避免了这个问题,但我真的希望能够完成整个社交身份验证,而无需移动嵌入小部件的页面。

1 个答案:

答案 0 :(得分:0)

您可以使用新窗口目标指向gAuth。