Ich erstelle eine Chrome-Erweiterung, die Daten aus dem Google Drive eines Nutzers abruft und in eine beliebige Seite einfügt. Ich habe das OAuth zum Funktionieren gebracht, aber ich kann nicht scheinen, Zugang zu dem Token zu erhalten (was ich sehen kann, wird über chrome://identity-internals
gesetzt).chrome.getAuthToken in einem Skript verwenden
Das Problem hier ist, dass, wenn der Chrome-Erweiterung Navigationsleiste Schaltfläche angeklickt wird, ich eine Anforderung zum Ausführen test.js
auslösen. test.js
hat anscheinend kein Konzept von chrome.identity
, aber es benötigt diese Informationen, um eine XHR-Anforderung zu stellen. Ich habe versucht,
- die Auth-Token in localstorage speichern, so dass test.js abgerufen werden kann (kein Glück)
- die test.js innerhalb der authToken Anfrage Nesting (nicht sicher, wie eigentlich die Variable gehen in die Datei und rufen Sie sie ab).
Gibt es irgendwelche Ideen?
Vielen Dank im Voraus!
chrome.browserAction.onClicked.addListener(function (tab) {
chrome.identity.getAuthToken({ 'interactive': true }, function(token) {
// This works
alert(token);
// This doesn't work
localStorage.setItem("authtoken", token);
});
chrome.tabs.executeScript(tab.id, {
// This file needs access to the authtoken
// but within test.js, chrome.identity is undefined.
"file": "test.js"
}, function() {
});
});