Synchronous API
2024年10月14日
一、access(path[, mode])
认识
access(path[, mode]) 测试用户对 path 指定的文件或目录的权限。 mode 参数是可选的整数,指定要执行的可访问性检查。
使用规范
不建议在调用 open()、readFile()、writeFile() 之前使用 access() 检查文件的可访问性。 这样做会引入竞争条件,因为其他进程可能会在两次调用之间更改文件的状态。 而是,用户代码应直接打开/读取/写入文件,并处理无法访问文件时引发的错误。
语法
const error = fs.accessSync(path,mode);
-
path: string|buffer|url
-
mode: number 默认值: fs.constants.F_OK
- fs.constants.F_OK: 是否存在
- fs.constants.R_OK: 是否可读
- fs.constants.W_OK: 是否可写
- fs.constants.W_OK | fs.constants.R_OK: 是否可读可写
返回值
如果任何可访问性检查失败,将抛出 Error。 否则,该方法将返回 undefined。
场景
const Fs = require("fs");
const error = Fs.accessSync("./test.js", Fs.constants.R_OK | Fs.constants.W_OK);
if (error) {
console.log(error);
}