當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Node.js fsPromises.access(path[, mode])用法及代碼示例


fsPromises.access(path[, mode])

添加於:v10.0.0

參數

測試用戶對 path 指定的文件或目錄的權限。 mode 參數是一個可選整數,用於指定要執行的可訪問性檢查。 mode 應該是值 fs.constants.F_OK 或由 fs.constants.R_OKfs.constants.W_OKfs.constants.X_OK 中的任何一個的按位或組成的掩碼(例如 fs.constants.W_OK | fs.constants.R_OK )。檢查 File access constants 以獲取 mode 的可能值。

如果可訪問性檢查成功,則 Promise 被解析,沒有任何值。如果任何可訪問性檢查失敗,則使用 <Error> 對象拒絕承諾。以下示例檢查文件/etc/passwd 是否可以被當前進程讀寫。

import { access } from 'node:fs/promises';
import { constants } from 'node:fs';

try {
  await access('/etc/passwd', constants.R_OK | constants.W_OK);
  console.log('can access');
} catch {
  console.error('cannot access');
}

不建議在調用 fsPromises.open() 之前使用 fsPromises.access() 檢查文件的可訪問性。這樣做會引入競爭條件,因為其他進程可能會在兩次調用之間更改文件的狀態。相反,用戶代碼應該直接打開/讀取/寫入文件並處理文件不可訪問時引發的錯誤。

相關用法


注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品 fsPromises.access(path[, mode])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。