当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js fs.accessSync()用法及代码示例


fs.accessSync()方法用于同步测试给定文件或目录的权限。可以使用文件访问常量将要检查的权限指定为参数。也可以通过使用按位或运算符创建具有多个文件常量的掩码来检查多个文件权限。

用法:

fs.accessSync( path, mode )

参数:此方法接受上述和以下所述的两个参数:



  • path:它是一个字符串,缓冲区或URL u,它表示必须对其权限进行测试的文件或目录的路径。
  • mode:它是一个整数值,表示要测试的许可。逻辑OR运算符可用于分隔多个权限。它可以具有值fs.constants.F_OKfs.constants.R_OKfs.constants.W_OKfs.constants.X_OK。它是一个可选参数。默认值为fs.constants.F_OK

以下示例说明了Node.js中的fs.accessSync()方法:

范例1:本示例显示了文件读写权限的测试。

// Node.js program to demonstrate the 
// fs.accessSync() method 
  
// Import the filesystem module 
const fs = require('fs'); 
  
// Allowing only read permission 
console.log("Giving only read permission to user"); 
fs.chmodSync("example.txt", fs.constants.S_IRUSR); 
  
// Test the read permission 
console.log('\n> Checking Permission for reading the file'); 
try { 
  fs.accessSync('example.txt', fs.constants.R_OK); 
  console.log('File can be read'); 
} catch (err) { 
  console.error('No Read access'); 
} 
  
// Test both the read and write permission 
console.log('\n> Checking Permission for reading and writing to file'); 
try { 
  fs.accessSync('example.txt', fs.constants.R_OK | fs.constants.W_OK); 
  console.log('File can be read and written'); 
} catch (err) { 
  console.error('No Read and Write access'); 
}

输出:

Giving only read permission to user

> Checking Permission for reading the file
File can be read

> Checking Permission for reading and writing to file
No Read and Write access

范例2:此示例显示文件的测试(如果存在)。

// Node.js program to demonstrate the 
// fs.accessSync() method 
  
// Import the filesystem module 
const fs = require('fs'); 
  
// Test the if the file exists 
console.log('\n> Checking if the file exists'); 
try { 
  fs.accessSync('example.txt', fs.constants.F_OK); 
  console.log('File does exist'); 
} catch (err) { 
  console.error('File does not exist'); 
} 
  
console.log('\nCreating the file'); 
fs.writeFileSync("example.txt", "Test File"); 
  
// Test the if the file exists again 
console.log('\n> Checking if the file exists'); 
try { 
  fs.accessSync('example.txt', fs.constants.F_OK); 
  console.log('File does exist'); 
} catch (err) { 
  console.error('File does not exist'); 
}

输出:

> Checking if the file exists
File does not exist

Creating the file

> Checking if the file exists
File does exist

参考: https://nodejs.org/api/fs.html#fs_fs_accesssync_path_mode




相关用法


注:本文由纯净天空筛选整理自sayantanm19大神的英文原创作品 Node.js | fs.accessSync() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。