0

Je construis une extension de chrome dans lequel jechrome.identity ne pas montrer tous les connecté compte Google en popup

chrome.identity.getAuthToken({ 
     interactive: true 
    }, function(token) { 
     if (chrome.runtime.lastError) { 
      alert(chrome.runtime.lastError.message); 
      return; 
     } 
     var x = new XMLHttpRequest(); 
     x.open('GET', 'https://www.googleapis.com/oauth2/v1/userinfo?alt=json&access_token=' + token); 
     x.onload = function() { 
      alert(x.response); 
     }; 
     x.send(); 
    }); 

sur background.js pour l'authentification de connexion Google. Lorsque cette fonction est appelée, une fenêtre apparaît qui affiche les comptes google connectés (le cas échéant), mais mon problème est qu'il ne montre qu'un seul compte, mais je me suis connecté 5 comptes dans le navigateur.

Y at-il quelque chose qui m'a manqué ici?

Et j'ai aussi besoin de savoir comment écrire la fonction de déconnexion?

+0

Il y a seulement 1 compte pour Chrome, et que cette API ne fonctionne qu'avec: –

+0

Y a-t-il une différence entre les API utilisées pour les applications Web? ation comme stackoverflow et extension chrome? –

Répondre

1

chrome.identity utilisera le compte qui est "connecté" dans chrome://settings. Si vous n'êtes pas connecté à Chrome, un onglet s'affiche pour vous permettre de vous connecter à Chrome, ce qui signifie que vous pouvez associer le profil actuel à un compte Google. Si vous souhaitez afficher tous les comptes simplement connectés, vous devrez créer manuellement une fenêtre contextuelle (en utilisant par exemple chrome.tabs.create ou window.open et renvoyer l'url de redirection à votre serveur qui communique alors avec votre poste (par exemple, en utilisant le code chrome.tabs.create ou window.open). sendMessage et onMessageExternal), ou si vous avez tabs permission, vous pourriez rediriger en utilisant urn:ietf:wg:oauth:2.0:oob:auto comme URL de redirection, qui fera apparaître la subvention OAuth dans le window.title, que vous pouvez lire avec votre tabs permission.

+0

Semble bien, mais ne comprend pas correctement ce qu'il faut faire pour créer une connexion correcte en utilisant Google. Avez-vous un exemple ou un code de connexion avec Google sur l'extension chrome? –

+0

Jetez un oeil à cette réponse: https://stackoverflow.com/a/32548057/1236215 (la deuxième partie, où il utilise chrome.tabs.onUpdated pour chercher window.title) – kzahel

+0

Merci. Cette réponse a l'air géniale, pas encore essayée mais j'espère qu'elle m'aidera. Que dois-je rechercher pour la deuxième partie? Est-ce qu'il manque quelque chose? –