2017-08-24 4 views
0

Je développe en utilisant l'API Google Drive via JavaScript. J'ai essayé le code d'exemple et j'ai trouvé que cela fonctionnait bien. Cependant, le même code n'a pas fonctionné avec l'extension chrome. Je suppose que c'est un problème avec la valeur de l'identifiant client, mais je ne pense pas que ce soit étrange, pourquoi cela ne fonctionne pas avec les extensions Chrome?Pourquoi gapi.client.init (API Google Drive) ne fonctionne-t-il pas?

// Client ID and API key from the Developer Console 
    var CLIENT_ID = '467319036759-udrp5jb3257p1kd11n5016rdid4qm8kd.apps.googleusercontent.com'; 

    // Array of API discovery doc URLs for APIs used by the quickstart 
    var DISCOVERY_DOCS = ["https://www.googleapis.com/discovery/v1/apis/drive/v3/rest"]; 

    // Authorization scopes required by the API; multiple scopes can be 
    // included, separated by spaces. 
    var SCOPES = 'https://www.googleapis.com/auth/drive'; 

    var authorizeButton = document.getElementById('authorize-button'); 
    var signoutButton = document.getElementById('signout-button'); 

    /** 
    * On load, called to load the auth2 library and API client library. 
    */ 
    function handleClientLoad() { 
    gapi.load('client:auth2', initClient); 
    console.log("load ok"); 
    } 

    /** 
    * Initializes the API client library and sets up sign-in state 
    * listeners. 
    */ 
    function initClient() { 
    gapi.client.init({ 
     discoveryDocs: DISCOVERY_DOCS, 
     clientId: CLIENT_ID, 
     scope: SCOPES 
    }).then(function() { 
     // Listen for sign-in state changes. 
     console.log("client ok"); 
     gapi.auth2.getAuthInstance().isSignedIn.listen(updateSigninStatus); 

     // Handle the initial sign-in state. 
     updateSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get()); 

     authorizeButton.onclick = handleAuthClick; 
     signoutButton.onclick = handleSignoutClick; 
    }, function(error) { 
     console.log(error); 
    }); 

    console.log("client"); 
    } 

enter image description here

journal de la console n'affiche pas "client ok"

L'adresse de l'extension, je me suis inscrit est https://chrome.google.com/webstore/detail/study/minmfnjifbdpcphgildjgfpnbiejajml

+0

Qu'est-ce que la console affiche? Cherchez-vous la bonne console (celle invoquée par Inspect Popup dans votre cas)? – Xan

+0

Le journal de la console affiche "load ok" et "client". J'espère pour 'client ok'. Bizarrement, la méthode 'gapi.client.init' ne laisse aucun journal. – megu

+0

S'il vous plaît [modifier] la question à être sur le sujet: inclure un [mcve] qui * duplique le problème *. Pour les extensions Chrome ou Firefox WebExtensions, vous devez presque toujours inclure votre * manifest.json * et une partie de l'arrière-plan, du contenu et/ou des scripts contextuels/HTML, et souvent des HTML/scripts de pages Web. Les questions demandant l'aide au débogage ("pourquoi mon code ne fonctionne-t-il pas comme je veux?") Doivent inclure: (1) le comportement souhaité, (2) un problème ou une erreur spécifique et (3) le code le plus court nécessaire pour le reproduire * dans la question elle-même *. S'il vous plaît voir aussi: [Quels sujets puis-je poser ici?] (/ Help/on-topic), et [ask]. – Makyen

Répondre