日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Node.js禁止覆蓋同名文件

默認(rèn)情況下,如果新添加文件與現(xiàn)有文件(Object)同名且對該文件有訪問權(quán)限,則新添加的文件將覆蓋原有的文件。本文介紹如何通過設(shè)置請求頭x-oss-forbid-overwrite在簡單上傳、拷貝文件及分片上傳等場景中禁止覆蓋同名文件。

簡單上傳

以下代碼用于簡單上傳時禁止覆蓋同名文件:

const OSS = require("ali-oss");

const client = new OSS({
  // yourregion填寫B(tài)ucket所在地域。以華東1(杭州)為例,Region填寫為oss-cn-hangzhou。
  region: 'yourregion',
  // 從環(huán)境變量中獲取訪問憑證。運行本代碼示例之前,請確保已設(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,
  // 填寫B(tài)ucket名稱。
  bucket: 'examplebucket'
});

// yourLocalFile填寫本地文件完整路徑。
const file = "yourLocalFile";
// 指定上傳文件操作時是否覆蓋同名Object。此處設(shè)置為true,表示禁止覆蓋同名Object。如果同名Object已存在,程序?qū)箦e。
const headers = {
  "x-oss-forbid-overwrite": true,
};
async function put() {
  try {
    // yourObjectName填寫Object的完整路徑。
    const result = await client.put("yourObjectName", file, { headers });
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

put();

拷貝文件

拷貝小文件

以下代碼用于拷貝小文件時禁止覆蓋同名文件:

const OSS = require("ali-oss");

const client = new OSS({
  // yourregion填寫B(tài)ucket所在地域。以華東1(杭州)為例,Region填寫為oss-cn-hangzhou。
  region: 'yourregion',
  // 從環(huán)境變量中獲取訪問憑證。運行本代碼示例之前,請確保已設(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,
  // 填寫B(tài)ucket名稱。
  bucket: 'examplebucket'
});

// 指定上傳文件操作時是否覆蓋同名Object。此處設(shè)置為true,表示禁止覆蓋同名Object。如果同名Object已存在,程序?qū)箦e。
const headers = {
  "x-oss-forbid-overwrite": true,
};
// yourTargetObject填寫拷貝后目標(biāo)Object完整路徑。
// yourSourceObject填寫待拷貝的源Object完整路徑。
client  
  .copy("yourTargetObject", "yourSourceObject", { headers })
  .then((res) => {
    console.log(res.res.data.toString("utf8"));
    console.log(res);
  })
  .catch((e) => {
    console.log(e);
  });

拷貝大文件

以下代碼用于拷貝大文件(分片拷貝)時禁止覆蓋同名文件:

const OSS = require("ali-oss");

const client = new OSS({
  // yourRegion填寫B(tài)ucket所在地域。以華東1(杭州)為例,Region填寫為oss-cn-hangzhou。
  region: "yourRegion",
  // 從環(huán)境變量中獲取訪問憑證。運行本代碼示例之前,請確保已設(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,
  // yourTargetBucket填寫拷貝后的目標(biāo)Object所在的存儲空間名稱。
  bucket: "yourTargetBucket"
});

async function put() {
  try {
    const result = await client.multipartUploadCopy(
      // 填寫拷貝后的目標(biāo)Object完整路徑。
      "yourTargetObject",
      {
        // 填寫待拷貝的源Object完整路徑。
        sourceKey: "yourSourceObject",
        // 填寫待拷貝的源Object所在的存儲空間名稱。
        sourceBucketName: "yourSourceBucket",
      },
      {
        // 指定拷貝文件操作時是否覆蓋同名Object。此處設(shè)置為true,表示禁止覆蓋同名Object。如果同名Object已存在,程序?qū)箦e。
        headers: { "x-oss-forbid-overwrite": true },
      }
    );
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

put();

分片上傳

以下代碼用于分片上傳時禁止覆蓋同名文件:

const OSS = require("ali-oss");

const client = new OSS({
  // yourRegion填寫B(tài)ucket所在地域。以華東1(杭州)為例,Region填寫為oss-cn-hangzhou。
  region: "yourRegion",
  // 從環(huán)境變量中獲取訪問憑證。運行本代碼示例之前,請確保已設(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,
  // yourbucketname填寫存儲空間名稱。
  bucket: "yourBucketName",
});

// yourLocalFile填寫本地文件完整路徑。
const file = "yourLocalFile";
// 指定上傳文件操作時是否覆蓋同名Object。此處設(shè)置為true,表示禁止覆蓋同名Object。如果同名Object已存在,程序?qū)箦e。
const headers = {
  "x-oss-forbid-overwrite": true,
};
{
  // 分片上傳。yourObjectName填寫Object的完整路徑。
  client    
    .multipartUpload("yourObjectName", file, { headers })
    .then((res) => {
      console.log(res);
    })
    .catch((e) => {
      console.log(e);
    });
}

相關(guān)文檔