📜  Node.js fsPromises.realpath() 方法(1)

📅  最后修改于: 2023-12-03 15:03:13.023000             🧑  作者: Mango

Node.js fsPromises.realpath() 方法

Node.js中的fsPromises模块提供了一系列的异步I/O操作方法,其中就包括realpath()方法。本文将介绍该方法的作用、用法以及返回值。

作用

fsPromises.realpath()方法用来获取指定路径的真实路径,即该路径的规范化绝对路径。在获取真实路径时,会解析出路径中的符号链接,将其转换成对应的真实路径。

用法

fsPromises.realpath()方法有两个参数,第一个参数是要获取真实路径的路径名,第二个参数是一个选项对象,其可选属性有一个值为'buffer'的encoding属性,用来规定返回值的编码。

下面是fsPromises.realpath()方法的基本用法:

const fsPromises = require('fs').promises;

fsPromises.realpath('/path/to/file', {encoding: 'utf8'})
    .then(realpath => {
        console.log(realpath);
    })
    .catch(error => {
        console.error(error);
    });

上面的代码中,我们使用了fsPromises.realpath()方法来获取路径"/path/to/file"的真实路径,并指定返回值编码为utf8。当成功获取真实路径时,将打印出该路径的真实路径;当获取真实路径失败时,将打印出错误信息。

返回值

fsPromises.realpath()方法的返回值是一个Promise对象。当成功获取真实路径时,Promise对象将以真实路径为值而被resolve;当获取真实路径失败时,Promise对象将以错误对象为值而被reject。

下面是fsPromises.realpath()方法的返回值示例:

const fsPromises = require('fs').promises;

fsPromises.realpath('/path/to/file')
    .then(realpath => {
        console.log(`The realpath of "/path/to/file" is: ${realpath}`);
    })
    .catch(error => {
        console.error(`Failed to get the realpath of "/path/to/file": ${error.message}`);
    });

在上面的代码中,我们使用了Promise对象的.then()方法和.catch()方法来处理fsPromises.realpath()方法的返回值。当Promise被resolve时,将打印出真实路径信息;当Promise被reject时,将打印出错误信息。