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