google chrome extension - chrome.identity.getAuthToken no funciona
google-chrome-extension google-oauth (2)
Problema resuelto !
el ID de la aplicación de mi Chrome extension
no coincide con el ID de mi aplicación en Google Console Developpers
Para evitar esta carga, primero su extensión, copie la ID de Chrome y configúrela en Google Console Developers. debes actualizarlo en la consola de Google cada vez que lo cambies en Google Chrome
Estoy trabajando con Chrome Identity API para proporcionar a los usuarios una Autenticación de Google en mi Extensión de Chrome.
Seguí el tutorial oficial de Google: enlace API de identidad de Chrome
- agregué permisos a manifest.json y Client ID y Scopes
- para activar la Autentificación, agregué este código en mi Background.js
chrome.identity.getAuthToken
El problema es cuando ejecuto la extensión me redirigen a esta página de inicio de sesión
chrome: // chrome-signin /? source = 5
pero después de una autenticación exitosa, me redirigen otra vez a la página de inicio de sesión
Cuál es el problema ?
Manifest.json
{
"name": "My Extension",
"short_name": "Ex App",
"version": "0.1",
"description": "description",
"manifest_version": 2,
"icons": { "128": "ICONE.png", "48": "ICONE1.png" },
"permissions": ["contextMenus", "identity", "cookies", "http://*/*", "https://*/*", "<all_urls>", "unlimitedStorage"],
"browser_action": {
"default_title": "Title",
"default_icon": "imgIcone.png"
},
"oauth2": {
"client_id": "xxxxxxx",
"scopes": [
"https://www.googleapis.com/auth/userinfo.email"
]
},
"background": {
"scripts": ["background.js"]
},
"content_scripts" : [
{
"matches": ["*://*.google.com/*"],
"js": ["gadget/js/jquery.js","gadget/js/contactcard.js"],
"css": ["gadget/css/contactcard.css"],
"all_frames": true
}],
"content_security_policy": "script-src ''self'' ''unsafe-eval'' https://apis.google.com/; object-src ''self''",
"web_accessible_resources": ["img.png","gadget/css/contactcard.css","gadget/img/extension/crec.png"]
}
Background.js:
chrome.identity.getAuthToken({ ''interactive'': true }, function(token) {
// Use the token.
console.log(token);
});
La respuesta aceptada es incorrecta. Puede subirlo a la tienda web, publicarlo y luego instalarlo desde la tienda web. Después de la instalación, busque el directorio de la aplicación de extensión instalada ( ~/Library/Application/ Support/Google/Chrome/Default/Extensions/<ext id>
en un Mac) y copie la key
clave del archivo manifest.json
instalado en su código fuente manifest.json
Después de agregar el campo key
a su manifest.json
, su id de aplicación no cambiará durante el desarrollo local.
Fuente: https://developer.chrome.com/apps/app_identity#copy_key