FileSystemHandle: requestPermission() method
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The requestPermission()
method of the
FileSystemHandle
interface requests read or readwrite permissions for the
file handle.
Syntax
requestPermission(descriptor)
Parameters
descriptor
Optional-
An object which specifies the permission mode to query for. Options are as follows:
'mode'
Optional-
Can be either
'read'
or'readwrite'
.
Return value
PermissionStatus.state
which is one of 'granted'
,
'denied'
or 'prompt'
.
Exceptions
TypeError
-
Thrown if no parameter is specified or the
mode
is not that of'read'
or'readwrite'
Examples
The following asynchronous function requests permissions if they have not been granted.
// fileHandle is a FileSystemFileHandle
// withWrite is a boolean set to true if write
async function verifyPermission(fileHandle, withWrite) {
const opts = {};
if (withWrite) {
opts.mode = "readwrite";
}
// Check if we already have permission, if so, return true.
if ((await fileHandle.queryPermission(opts)) === "granted") {
return true;
}
// Request permission to the file, if the user grants permission, return true.
if ((await fileHandle.requestPermission(opts)) === "granted") {
return true;
}
// The user did not grant permission, return false.
return false;
}
Specifications
Specification |
---|
File System Access # api-filesystemhandle-requestpermission |
Browser compatibility
BCD tables only load in the browser