0

as I am working on pwa instead of revoking permissions from the browser settings panel, trying to revoke from the Permissions API but unfortunately getting this error

navigator.permissions.revoke is not a function

please assist for the reference I took the geolocation :)

navigator.permissions.query({name:'geolocation'}).then(result=>{
        switch(result.state){
            case 'denied': {
                navigator.permissions.revoke({'name':'geolocation'}).then(resolve=>{
                    alert(resolve.state)
                })
                break;
            }
            case 'prompt':{
                alert("need your permission")
                break;
            }
            default:{
                console.log("geolocation permission query: ",result)
                break;
            }
        }
    }).catch(error=>console.error(error))
Ransaka Ravihara
  • 1,786
  • 1
  • 13
  • 30
Sikki
  • 53
  • 1
  • 10

2 Answers2

0

The Permissions Revoke API is not offered by all browsers according to MDN Browser-Compatibility

  • Also newer browsers stopped the support. Did you verify? [duplicate](https://stackoverflow.com/a/43473691/13745258) – sebastian-ruehmann Jun 15 '20 at 11:52
  • i checked using, `if(!navigator.permissions){console.log("no permissions api support")}else{consile.log("permission api available")}` – Sikki Jun 16 '20 at 03:59
0

You can try something like this.

navigator.permissions.query({name:'geolocation'}).then(function(p) {
  switch (p.state) {
case 'denied':
  navigator.permissions.revoke({name:'geolocatoin'}).then(res=>{
    alert(resolve.state)
  })
case 'granted':
  console.log('granted')
  break;
case 'prompt':
console.log('prompt')
  break;
  }
});
Ransaka Ravihara
  • 1,786
  • 1
  • 13
  • 30