需要在js中提出身份验证请求,但浏览器不支持弹出窗口。有什么方法可以重定向到新的网址或在应用程序的html5页面中显示请求
最佳答案
通过使用此代码,检查用户是否授权了您的应用
gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: true}, callbackAuthResult);
注意:
immediate:true
如果将即时设置为true,则不会显示弹出窗口。你看?您不打开弹出窗口,而是管理回调中的内容。此回调通常用于后处理。在这里,我们使用它进行身份验证。
在
callbackAuthResult
中:callbackAuthResult = function (authResult) {
var authorizeButton = document.getElementById('authorize-button');
if (authResult && !authResult.error) {
authorizeButton.style.display = 'none';
// do your processing here
} else {
authorizeButton.style.display = 'block';
authorizeButton.onclick = callbackAuthClick;
}
}
callbackAuthClick = function (event) {
gapi.auth.authorize({
client_id: clientId,
scope: scopes,
immediate: false
}, handleAuthResult);
return false;
}