我已经在开发应用程序中使用Google plus身份验证一段时间了。
我知道它不应该在本地主机上工作,但是我现在遇到了一些非常不稳定的行为。
Sign-in在任何平台上都能正常工作,但signOut(gapi.auth.signOut();)在不同平台上的行为不同:
- 在本地主机上的Firefox中,signOut工作如我所料。我点击我的签出按钮,回调触发,我注销。
- 在本地主机上的Chrome In -cognito中,当我单击我的退出按钮时,回调触发,我注销,然后立即再次登录。这就是我在Chrome/localhost中所期望的。
- 在Chrome (ex-cognito)和远程服务器上的任何浏览器中,回调函数根本不会触发。我在'gapi.auth.signOut();'之前和之后都放了注释,两个注释都出现在控制台中,但没有其他事情发生。
我的应用程序使用AngularJS,从Node.js/Express服务器服务。我正在使用页面级标签的clientId和范围:
<meta name="google-signin-clientid" content="<%= googleClientId %>" />
<meta name="google-signin-scope" content="<%= googleScopes %>" />
和其他东西的data-attributes:
<span class='g-signin'
data-approvalprompt='auto'
data-redirecturi='postmessage'
data-accesstype='offline'
data-cookiepolicy='single_host_origin'
data-width='wide'
data-callback='signinCallback'>
</span>
我现在不知道出了什么问题。
如有任何建议,不胜感激。
现在按预期工作了。我没有修复它,所以我猜谷歌代码一定是坏了