Chrome Extension - Solicitar permisos opcionales para la pestaña actual

votos
1

Estoy tratando de requerir autorización pestaña de origen actual. Ej: Estoy en http://stackoverflow.com , al hacer clic en placa, a continuación, en el botón de la ventana emergente, y que debería obtener un cuadro de mensaje para permitir la manipulación de esta ficha.

Que estoy haciendo:

  • manifiesto
    ...
    permisos: [ pestañas, contextmenus],
    optional_permissions: [ <all_urls>],
    ...
    
  • surgir

     $ ( '# ReqPermision'). Click (function ()
    {
        bg.reqPerm (url);
    });

  • fondo

     función reqPerm (url)
    {
        chrome.permissions.request ({permisos: [ ''] pestañas, orígenes: [url]}, la función (concedida)
        {
            log ( 'permiso expreso:', concedida)
        });
    }

Lo que estoy recibiendo:

Error durante permissions.request : permisos opcionales deben ser listados en la extensión del manifiesto.

Si fijo url manualmente (en este ex. Https://stackoverflow.com/ ) en la matriz optional_permissions, todo está funcionando cómo necesito.

Publicado el 15/04/2012 a las 22:41
fuente por usuario
En otros idiomas...                            


3 respuestas

votos
1

Este momento no es posible, sólo se puede solicitar permisos para las direcciones URL que se han enumerado explícitamente en el manifiesto. Sin embargo, esta solicitud de función debe hacer lo que usted está tratando de hacer (conceder permiso automáticamente al hacer clic en una acción del navegador) factible.

Respondida el 25/04/2012 a las 19:01
fuente por usuario

votos
-2

en primer lugar, el permiso opcional de que no está permitido // error en su código en segundo lugar, se necesita especificar el permiso pestaña en la matriz de autorización opcional le hizo esto

"permissions": ["tabs", "contextMenus"], "optional_permissions": [ "<all_urls>" ],

lo hace como esto

"permissions": [, "contextMenus"], "optional_permissions": [ 'tabs' ,<any other permission you want>],

en tercer lugar se debe comprobar antes de que solicitar permiso y no concedido, entonces la solicitud debe presentarse refference permiso a Google opcional

Respondida el 16/09/2014 a las 04:31
fuente por usuario

votos
0

Lo que estamos tratando de hacer debería funcionar. En la ventana emergente el código debe ser:

$('#reqPermision').click(function() {
    chrome.permissions.request({origins: [url]}, function (granted) {
        log('permision:', granted)
    });
});

No es necesario que llamaremos a partir de una página de fondo.


Sin embargo es probable que sea mejor utilizar un módulo como webext-dominio-permiso-toggle porque va a manejar toda la interfaz de usuario para usted.

Respondida el 03/08/2019 a las 10:05
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more