Notification.requestPermission()

El método requestPermission() de la interfaz Notification realiza una petición de permiso al usuario para que en ese dominio web se puedan mostrar notificaciones. 

Sintaxis

La ultima especificación ha actualizado este método a una sintaxis basada en Promise:

Notification.requestPermission().then(function(permission) { ... });

Anteriormente, la sintaxis se basaba en una simple retrollamada (callback); esta especificación ahora está obsoleta.

Notification.requestPermission(callback);

Parámetros

callback Optional Desaprobado Gecko 46
Una retrollamada (callback) opcional que es ejecutado con el valor del permiso elegido por el usuario. Obsoleto y reemplazado por el valor de retorno de Promise.

Retorno

Devuleve un Promise que se transforma a DOMString con el permiso escogido por el usuario. Los valores posibles para este son granted, denied, ó default.

Ejemplo

El siguiente fragmento realiza la petición de permiso al usuario, después registra un resultado diferente dependiendo de la elección del usuario.

Notification.requestPermission(function(result) {
  if (result === 'denied') {
    console.log('Permission wasn\'t granted. Allow a retry.');
    return;
  } else if (result === 'default') {
    console.log('The permission request was dismissed.');
    return;
  }
  // Hacer algo con el permiso concedido.
});

Especificaciones

Especificación Estado Comentario
Notifications API Living Standard Living standard

Compatibilidad con los buscadores

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Soporte básico 5 webkit (ver notas)
22
4.0 moz (ver notas)
22
No support 25 6 (ver notas)
Característica Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
Soporte básico ?

(Yes)

4.0 moz (ver notas)
22
1.0.1 moz (ver notas)
1.2
No support ? No support

(Yes)

Notas de Firefox OS

Notas de Chrome

Notas de Safari

Ver también

Etiquetas y colaboradores del documento

 Colaboradores en esta página: MarkelCuesta, jezdez, Davdriver
 Última actualización por: MarkelCuesta,