对存储空间(Bucket)中的任意文件(Object)进行相关操作前,您需要先判断该文件是否存在。
以下代码用于判断文件是否存在:
const OSS = require('ali-oss');
const client = new OSS({
// yourregion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
region: 'yourregion',
// 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
accessKeyId: 'yourAccessKeyId',
accessKeySecret: 'yourAccessKeySecret',
// yourBucketName填写存储空间名称。
bucket: 'yourBucketName',
async function isExistObject(name, options = {}) {
try {
await client.head(name, options);
console.log('文件存在')
} catch (error) {
if (error.code === 'NoSuchKey') {
console.log('文件不存在')
// 用于判断未开启版本控制状态的Bucket中的Object是否存在。
// yourObjectName填写不包含Bucket名称在内的Object的完整路径,例如example/test.txt。
const name = 'yourObjectName'
isExistObject(name)
// 用于判断受版本控制Bucket中指定versionId的Object是否存在。
const options = {
// YourObjectVersionId填写Object的versionId。
versionId: 'YourObjectVersionId'
isExistObject(name, options)