[英]FileSystemHandle.requestPermission DOMException: User activation is required to request permissions
我的網站需要一個打開的本地文件功能,所以我在我的代碼中使用文件系統訪問 API。 當從本地打開的文件被我的網絡編輯並需要保存到原始文件時。 我發現它沒有權限。 因此,我找到了請求文件句柄權限的方法,如下所示:
async function verifyPermission(fileHandle: any, readWrite: boolean) {
const options = {
mode: 'readwrite',
};
let isPermit = false;
// Check if permission was already granted. If so, return true.
if ((await fileHandle.queryPermission(options)) === 'granted') {
isPermit = true;
}
if ((await fileHandle.requestPermission(options)) === 'granted') {
isPermit = true;
}
return isPermit;
}
但是當我執行到fileHandle.requestPermission(options)
它控制台錯誤
Uncaught (in promise) DOMException: User activation is required to request permissions.
我缺少什么? 謝謝你的QQ
您始終可以查詢文件的權限,但請求需要用戶手勢(例如單擊按鈕)。 規范中概述了這一點(重點是我的):
如果此句柄的讀取權限狀態不是“提示”,則將直接返回該狀態。 但是,如果是“提示”,則需要用戶激活,這將向用戶顯示確認提示。 然后根據用戶對提示的響應返回新的讀取權限狀態。
您需要在實現中分離查詢和請求權限。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.