2014-10-16 7 views
12

Ich schreibe eine Chrome-Erweiterung, in der ich versuche, die chrome.identity-API zu verwenden. Aber mein Chrome erkennt keine Identität.Chrome.identity nicht verfügbar/undefined

Auf dem folgenden Code in Entwickler-Tool, erhalte ich eine Fehlermeldung, dass „nicht Eigentum getAuthToken undefinierten lesen:.

chrome.identity.getAuthToken({ 'interactive': false }, function(token) { 

ich Typisierung in der Konsole versuchte chrome.extension funktioniert, aber chrome.identity ist nicht definiert.

Mein manifest.json hat „Identität“ in Berechtigungen. ich bin auf dem neuesten Chrome v38. gibt es noch etwas benötigt, um die Identität API zu aktivieren?

+2

Diese API kann nicht in einem Inhaltsskript verwendet werden. –

+0

Das Identitätsbeispiel (https://github.com/GoogleChrome/chrome-app-samples/tree/master/samples/identity) verwendet es in einer js-Datei in der Erweiterung, genau wie ich. Ich bin mir sicher, dass ich etwas vermisse. – Bonton255

+3

Die API kann in einer Hintergrundseite, einer Erweiterungsseite, einer Options-Seite oder einer Popup-Seite, jedoch nicht in einem Inhaltsskript verwendet werden. –

Antwort

20

Der Grund, warum ich nicht in der Lage war Identität zu verwenden, war, weil ich versuchen, darauf zuzugreifen ein Inhaltsskript Ich wechselte zu einem Hintergrundskript und es funktioniert jetzt! Danke Rob!

+2

Ich versuche, es in background.js zu tun, aber es funktioniert nicht –

+1

Ich verbrachte ein paar Stunden mit der gleichen Sache kämpfen. Es ist erstaunlich, dass dies nicht in den Dokumenten enthalten ist. – arhoskins

+7

@TahirYasin Ich hatte dieses Problem auch und es stellte sich heraus, dass ich vergaß, "" Berechtigungen ": [" Identität "]' zu meinem manifest.json hinzuzufügen. – adrianmc