logo hsb.horse
← スニペット一覧に戻る

Snippets

File System API権限チェック

ブラウザのFile System APIで権限を確認し、必要に応じて要求を行う関数。読み取り専用・読み書き両用に対応。

公開日: 更新日:

翻訳

ブラウザのFile System APIで権限を確認し、必要に応じて要求を行う。

現在の権限がgrantedなら即座にtrueを返す。 権限がない場合は権限要求を行う。 権限要求はユーザーのクリックイベント内で呼ぶ必要がある。

async function verifyPermission(handle: FileSystemHandle, readWrite: boolean) {
const options = {};
if (readWrite) {
options.mode = 'readwrite';
}
// 1. 現在の権限を確認
if ((await handle.queryPermission(options)) === 'granted') {
return true;
}
// 2. 権限がない場合、リクエストする
if ((await handle.requestPermission(options)) === 'granted') {
return true;
}
return false;
}