抖音开放平台Logo
控制台

FileSystemManager.access
收藏
我的收藏

基础库 1.15.0 开始支持本方法,这是一个异步方法。

判断文件/目录是否存在。

前提条件
业务背景
使用限制
注意事项
access 可以用于 用户目录(ttfile://user) 临时目录(ttfile://temp) 以及 包内目录(访问包内目录不需要加额外协议头)
相关教程

语法

FileSystemManager.access(options)

参数说明

options 为 object 类型,属性如下:

属性名类型默认值必填说明最低支持版本
pathstring
要判断是否存在的文件/目录路径
1.15.0
successfunction
接口调用成功的回调函数
1.15.0
failfunction
接口调用失败的回调函数
1.15.0
completefunction
接口调用结束的回调函数(调用成功、失败都会执行)
1.15.0

回调成功

object 类型,属性如下:

属性名类型说明最低支持版本
errMsgstring
"access:ok"
1.15.0

回调失败

object 类型,属性如下:

属性名类型说明最低支持版本
errMsgstring
"access:fail " + 详细错误信息
1.15.0

错误码

errNoerrMsg说明最低支持版本
20000access:fail path is invalid
path 参数错误
1.99.0
20001access:fail param should be xxx, but got xxx
参数校验错误
1.99.0
21101access:fail permission denied, access {path_value}
访问路径不可读
1.99.0
21102access:fail no such file or directory, access {path_value}
访问文件不存在
1.99.0

代码示例

【代码示例1】判断临时目录路径是否存在
const fileSystemManager = tt.getFileSystemManager();
const path = `ttfile://temp/some-path`; // 判断的地址

try {
  fileSystemManager.accessSync(path);
  console.log(`${path} 地址存在`);
} catch (err) {
  console.log(`${path} 地址不存在或其他错误`, res.errMsg);
}
【代码实例2】判断用户目录下路径是否存在
const fileSystemManager = tt.getFileSystemManager();
const path = `ttfile://user/some-path`; // 判断的地址

try {
  fileSystemManager.accessSync(path);
  console.log(`${path} 地址存在`);
} catch (err) {
  console.log(`${path} 地址不存在或其他错误`, res.errMsg);
}
【代码示例3】判断包内路径是否存在
const fileSystemManager = tt.getFileSystemManager();
// 包内路径不需要 `ttfile://` 协议
const path = "app.js"; // 判断的地址

try {
  fileSystemManager.accessSync(path);
  console.log(`${path} 地址存在`);
} catch (err) {
  console.log(`${path} 地址不存在或其他错误`, res.errMsg);
}