noejs里面,上传文件并同时设置其acl权限为public-read。 目前只有 const OSS = require('ali-oss'); const client = new OSS(options); client.put('object-name', 'local-file');
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在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
,意味着该文件将对公众可读。