Я использую клиент gapi в расширении chrome для доступа к Google Диску. Первый шаг - авторизовать мое приложение. Я использую gapi.auth.authorize, чтобы начать авторизацию. После того, как я авторизую приложение через всплывающее окно, запущенное в gapi, окно никогда не закрывается и не застревает, как показано на рисунке ниже. Однако авторизация преуспела в фоновом режиме, потому что, если я закрываю окно вручную, я не вижу застрявшего всплывающего окна в следующий раз. Может кто-нибудь указать, что я делаю неправильно?Google authorize popup застрял в расширении chrome
После нажатия ссылки 'Разрешить доступ' на всплывающее окно авторизации,
Затем он показывает пустой всплывающее окно, которое застряло
код, который я с использованием
function handleClientLoad(){
gapi.client.setApiKey('My API key');
window.setTimeout(checkAuthAuto, 1);
}
var checkAuthAuto = function() {
console.log('checkAuthAuto');
gapi.auth.authorize({
client_id: 'My client id',
scope: 'https://www.googleapis.com/auth/drive.file',
immediate: true
}, handleAuthResult);
}
function handleAuthResult(authResult) {
console.log('handleAuthResult');
var authButton = document.getElementById('authorizeButton');
var filePicker = document.getElementById('filePicker');
var addButton = document.getElementById('addButton');
authButton.style.display = 'none';
filePicker.style.display = 'none';
addButton.style.display = 'none';
if (authResult && !authResult.error) {
addButton.style.display = 'block';
addButton.onclick = uploadFile;
console.log('handleAuthResult:noerror');
} else {
// No access token could be retrieved, show the button to start the authorization flow.
authButton.style.display = 'block';
console.log('handleAuthResult:error');
console.log(authResult);
authButton.onclick = function() {
console.log('authButton.onclick');
gapi.client.setApiKey('My api key');
gapi.auth.authorize({
client_id: 'My client id',
scope: 'https://www.googleapis.com/auth/drive.file',
immediate: false
}, handleAuthResult);
return false;
};
}
}
Я также пытаюсь проверить правильность настройки API-интерфейса API в правильной консоли API Google. Я указал источник javascript - «chrome-extension: //» и оставил пустой URL-адрес перенаправления. –
plspl
Здесь больше обсуждений - https://groups.google.com/forum/?fromgroups=#!topic/google-api-javascript-client/GuFxPzqQ9-0 – plspl
Записанная проблема для этого в коде google для gapi команда, HTTPS: //code.google.com/p/google-api-javascript-client/issues/detail ID = 74. Пожалуйста, поддержите его. – plspl