开发者社区 问答 正文

nodejs sdk里面如何在上传文件时并同时设置它的acl权限?目前在文档中没有看到.

noejs里面,上传文件并同时设置其acl权限为public-read。 目前只有 const OSS = require('ali-oss'); const client = new OSS(options); client.put('object-name', 'local-file');

展开
收起
游客u23j54fkqkmzi 2020-11-17 14:59:23 813 分享 版权
阿里云 AI 助理回答

在Node.js中使用阿里云OSS SDK(ali-oss)上传文件并设置其ACL权限为public-read,你需要在调用put方法时,传入一个配置对象作为第三个参数,在这个对象中指定acl属性。下面是一个示例代码:

const OSS = require('ali-oss');
const client = new OSS({
  region: '<Your region>',
  accessKeyId: '<Your AccessKeyId>',
  accessKeySecret: '<Your AccessKeySecret>',
  bucket: '<Your bucket name>',
});

async function uploadFileWithPublicRead ACL(fileName, filePath) {
  try {
    // 上传文件并设置ACL为public-read
    await client.put(fileName, filePath, {
      acl: 'public-read',
    });
    console.log(`文件${fileName}上传成功,并已设置为公共读权限。`);
  } catch (err) {
    console.error('上传文件时发生错误:', err);
  }
}

// 使用函数上传文件
uploadFileWithPublicReadACL('object-name', 'local-file-path');

请确保替换<Your region><Your AccessKeyId><Your AccessKeySecret><Your bucket name>以及'object-name''local-file-path'为你的实际值。这段代码展示了如何异步上传文件,并在上传时直接将其访问控制列表(ACL)设置为public-read,意味着该文件将对公众可读。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答