1. // npm 安装 SDK 开发包,
安装命令为: npm install aws-sdk
2. // JS处引入
const AWS = require('aws-sdk')
3. // 在需要上传处
var s3 = new AWS.S3({
accessKeyId: '您的 access-key',
secretAccessKey: '您的 secret-key',
endpoint: "使用自己的endpoint" // eg: 'eos-wuxi-1.cmecloud.cn'
});
var params = {
Body: '要上传的文件',
Bucket: "目标桶",
Key: "文件名称",
// 存储方式
// STANDARD:标准存储,适合存储经常访问的数据,成本较高
// STANDARD_IA:低频存储,适合存储偶尔访问的数据,成本较低
// GLACIER:归档存储,适合归档数据,每年的访问频率 <=1 次,成本最低
StorageClass: "STANDARD_IA" // 这里本来是官方的例子 但是上传中 加了这行会报错 去掉就能成功 不知道为什么 我实际操作中这行注掉了
};
s3.putObject(params, function(err, data) {
if (err) {
console.log(err, err.stack);
} else {
console.log(data);
// 官方的例子就到这里
// 成功之后这里返回的是一个Etag 如果要地址还得走方法
var params = { Bucket: '桶名', Key: '文件名' } let url = s3.getSignedUrl('getObject', params); // 这时的url 就是回显的地址了 但是好像是会把鉴权之类的信息带出来 后来我们放弃了这种写法}
});
标签:存储,err,s3,STANDARD,EOS,params,var,直传,SDK From: https://www.cnblogs.com/shirunfeng/p/16880223.html