我使用“ gapi.signin2.render”功能在页面上放置了一个google登录按钮。我将带有成功处理程序的对象传递给该函数。
当用户最初单击按钮时,一切都会按预期进行。出现Google登录弹出窗口。但是完成登录过程后,我的页面上什么都没有发生。
刷新页面后,该按钮再次触发身份验证过程。并在“登录”出现后立即调用成功处理程序。
我查看了网络流量,并看到了包含所有信息的响应。这意味着应在Google控制台中正确配置所有内容。否则我不会得到回应,对吧?
这是我的Vue组件:
<template>
...
<div id="google-signin-button" class="g-signin2"></div>
...
</template>
<script>
...
window.gapi.signin2.render('google-signin-button', {
onsuccess: this.onSignIn,
})
...
onSignIn: function(googleUser) { }
<script>
这是index.html:
<meta name="google-signin-client_id" content="xxx.apps.googleusercontent.com">
<script src="https://apis.google.com/js/platform.js" async defer></script>
我该怎么做才能在初始登录时调用成功处理程序?
答案 0 :(得分:0)
好,我找到了。不幸的是,我误解了官方文档。
我必须先加载auth2模块:
window.gapi.load('auth2', () => {
window.gapi.signin2.render('google-signin-button', {
onsuccess: this.onSignIn,
})
})