FileSystemHandle.requestPermission()
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。
Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。
FileSystemHandle
インターフェイスの requestPermission()
メソッドは、ファイルハンドルの読み取りまたは読み書きの許可を要求します。
構文
js
requestPermission(fileSystemHandlePermissionDescriptor)
引数
- FileSystemHandlePermissionDescriptor 省略可
-
要求する許可のモードを指定するオブジェクトです。以下のオプションが設定可能です。
- :
'mode'
:'read'
または'readwrite'
のいずれかの値をとります。
- :
返値
'granted'
、'denied'
、'prompt'
のいずれかである PermissionStatus.state
です。
例外
TypeError
-
引数が指定されていないか、
mode
が'read'
でも'readwrite'
でもないとき投げられます。
例
以下の非同期関数は、許可が与えられていなければ許可を要求します。
js
// fileHandle は FileSystemFileHandle
// withWrite は書き込みのとき true となる boolean 値
async function verifyPermission(fileHandle, withWrite) {
const opts = {};
if (withWrite) {
opts.mode = "readwrite";
}
// 既に許可されているかを確認し、許可されていれば true を返す
if ((await fileHandle.queryPermission(opts)) === "granted") {
return true;
}
// ファイル操作の許可を要求し、ユーザーが許可したら true を返す
if ((await fileHandle.requestPermission(opts)) === "granted") {
return true;
}
// ユーザーが許可しなかったので、false を返す
return false;
}
仕様書
Specification |
---|
File System Access # api-filesystemhandle-requestpermission |
ブラウザーの互換性
BCD tables only load in the browser