Node.js 检查文件或目录的权限
示例
fs.access()确定路径是否存在以及用户对该路径上的文件或目录具有什么权限。fs.access而是不返回结果,如果不返回错误,则说明该路径存在并且用户具有所需的权限。
权限模式可用作fs对象的属性,fs.constants
fs.constants.F_OK -具有读/写/执行权限(如果未提供任何模式,则为默认设置)
fs.constants.R_OK -具有读取权限
fs.constants.W_OK -具有写权限
fs.constants.X_OK-具有执行权限(与fs.constants.F_OKWindows相同)
异步地
var fs = require('fs');var path = '/path/to/check';
// 检查执行权限
fs.access(path, fs.constants.X_OK, (err) => {
if (err) {
console.log("%s doesn't exist", path);
} else {
console.log('can execute %s', path);
}
});
// 检查我们是否具有读/写权限
// 指定多种权限模式时
// 每个模式都由管道分隔:
fs.access(path, fs.constants.R_OK | fs.constants.W_OK, (err) => {
if (err) {
console.log("%s doesn't exist", path);
} else {
console.log('can read/write %s', path);
}
});
同步地
fs.access也有一个同步版本fs.accessSync。使用时fs.accessSync,必须将其包含在try / catch块中。
// 检查写权限try {
fs.accessSync(path, fs.constants.W_OK);
console.log('can write %s', path);
}
catch (err) {
console.log("%s doesn't exist", path);
}
以上是 Node.js 检查文件或目录的权限 的全部内容, 来源链接: utcz.com/z/343147.html