--- title: Permissions.revoke() slug: Web/API/Permissions/revoke tags: - API - Experimental - Method - Permissions - Permissions API - Reference - revoke translation_of: Web/API/Permissions/revoke ---
{{APIRef("Permissions API")}}{{SeeCompatTable}}
{{domxref("Permissions")}} インターフェイスの Permissions.revoke()
メソッドは、現在設定されているパーミッションをデフォルト状態(通常は prompt
)に戻します。
このメソッドは、グローバルな {{domxref("Permissions")}} オブジェクトである {{domxref("navigator.permissions")}} に対して呼び出します。
var revokePromise = navigator.permissions.revoke(descriptor);
descriptor
PermissionDescriptor
ディクショナリに基づくオブジェクト。 利用可能なオプションは次のとおりです。
name
: パーミッションを照会したい API の名前。 有効な値は、'geolocation'
、'midi'
、'notifications'
、'push'
です。userVisibleOnly
: Push のみ。 Firefox はサポートしていません。 下記の{{anch("Browser compatibility","ブラウザーの互換性")}}のセクションを参照してください)すべてのメッセージについて通知を表示するか、サイレントプッシュ通知を送信できるかを示します。 デフォルトは false
です。sysex
: (MIDI のみ)システムエクスクルーシブメッセージが必要か受信するかどうかを示します。 デフォルトは false
です。注: Firefox 44 以降、Notifications と Push のパーミッションは統合されました。 (例えば、ユーザーによって、関連するパーミッションのダイアログにより)パーミッションが与えられた場合、navigator.permissions.query()
は notifications
と push
の両方に対して true
を返します。
注: persistent-storage
パーミッションは、Storage API のとおりに、オリジンがそのストレージとして永続的ボックス(すなわち永続的ストレージ(persistent storage))を使用することを許可します。
要求の結果を示す {{domxref("PermissionStatus")}} オブジェクトと共に成功ハンドラを呼び出す {{jsxref("Promise")}}。
TypeError
PermissionDescriptor
情報の取得が何らかの理由で失敗したか、アクセス権が存在しないか現在サポートされていません(例えば、midi
、または userVisibleOnly
と一緒の push
で)。この関数をアプリで使用して、それが有する Geolocation API のパーミッションを取り消すように要求できます。
function revokePermission() { navigator.permissions.revoke({name:'geolocation'}).then(function(result) { report(result.state); }); }
仕様 | 状態 | コメント |
---|---|---|
{{SpecName('Permissions API','#dom-permissions-revoke','revoke()')}} | {{Spec2('Permissions API')}} | 初期定義 |
{{Compat("api.Permissions.revoke")}}