Node.js重命名文件
更新時(shí)間:
OSS不支持直接對(duì)文件(Object)進(jìn)行重命名。如果您需要在同一個(gè)Bucket內(nèi)對(duì)Object進(jìn)行重命名,您可以通過(guò)CopyObject接口將源Object拷貝至目標(biāo)Object,然后通過(guò)DeleteObject接口刪除源Object。
示例代碼
以下代碼用于將examplebucket下的srcobject.txt重命名為destobject.txt。
const OSS = require('ali-oss');
const client = new OSS({
// yourregion填寫(xiě)B(tài)ucket所在地域。以華東1(杭州)為例,Region填寫(xiě)為oss-cn-hangzhou。
region: 'oss-cn-hangzhou',
// 從環(huán)境變量中獲取訪問(wèn)憑證。運(yùn)行本代碼示例之前,請(qǐng)確保已設(shè)置環(huán)境變量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
authorizationV4: true,
// 填寫(xiě)B(tài)ucket名稱。
bucket: 'examplebucket',
})
async function renameObject() {
try {
// 將srcobject.txt拷貝至同一Bucket下的destobject.txt。
const r = await client.copy('destobject.txt', 'srcobject.txt');
console.log('拷貝成功', r);
// 刪除srcobject.txt。
const deleteResult = await client.delete('srcobject.txt');
console.log(deleteResult);
} catch (e) {
console.log(e);
}
}
renameObject();
說(shuō)明
OSS也不支持直接對(duì)目錄進(jìn)行重命名。如果需要重命名目錄,您可以參考以上示例對(duì)該目錄下的子目錄和Object逐個(gè)進(jìn)行重命名操作。
相關(guān)文檔
關(guān)于重命名文件涉及的API接口說(shuō)明,請(qǐng)分別參見(jiàn)CopyObject和DeleteObject。
文檔內(nèi)容是否對(duì)您有幫助?