Выйти из Google chrome .identity google-oauth не работает CHROME РАСШИРЕНИЕ - PullRequest
0 голосов

У меня расширение chrome. во всплывающем окне есть кнопка входа, при нажатии на которую пользователь аутентифицируется и вошел в систему google. когда пользователь вошел в систему, во всплывающем окне появляется кнопка выхода, я хочу, чтобы когда я нажимал кнопку выхода, выходил из google api и google. вход работает нормально, но есть проблемы с выходом. в консоли ничего нет. Может кто-нибудь помочь мне, пожалуйста?

при нажатии кнопок я отправляю сообщения из всплывающего окна. js в фоновый. js где основные функции.

всплывающее окно. js:



var authorizeButton = document.getElementById('authorize_button');
var signoutButton = document.getElementById('signout_button');

console.log('hi')
chrome.runtime.sendMessage({cmd: 'getAuthorize'}, function (signedIn) {
    if(signedIn){
        authorizeButton.style.display = 'none';
        signoutButton.style.display = 'block';
 
        signoutButton.onclick = handleAuthClick;
    }else{
        authorizeButton.style.display = 'block';
        signoutButton.style.display = 'none';
        authorizeButton.onclick = handleSignoutClick;
       
    }
});

function handleAuthClick(event) {
    chrome.runtime.sendMessage({cmd: 'doAuthorize'}, function (resp) {
        console.log(resp);
    });
    
  }
 function handleSignoutClick(event){
  chrome.runtime.sendMessage({cmd: 'signOut'}, function (isLogOuted) {
      if(isLogOuted){
        authorizeButton.style.display = 'block';
        signoutButton.style.display = 'none';
  
      }else{
        authorizeButton.style.display = 'none';
        signoutButton.style.display = 'block';
    
      }
});

}


фон. js: код выхода



function signout(sendResponse){
    chrome.identity.launchWebAuthFlow(
        { 'url': 'https://accounts.google.com/logout' },
        function(outed) {
            let isLogOuted = false;
        if(outed){
            isLogOuted = true;
        }
        common.setLocal({'isLogOuted':isLogOuted});
        setTimeout(function() {
            sendResponse(isLogOuted);
        }, 1000);
        
        });
}


...