直接上代码
Document
Upload
///
var credentials = {
accessKeyId: 'xxxxxxxxxxxxx',
secretAccessKey: 'xxxxxxxxxxxxxx'
}; //秘钥形式的登录上传
AWS.config.update(credentials);
AWS.config.region = 'xxxxxxxxxxxx'; //设置区域
// create bucket instance
var bucket = new AWS.S3({ params: { Bucket: 'xxxxxxxxx' } }); //选择桶
var fileChooser = document.getElementById('file-chooser');
var button = document.getElementById('upload-button');
var results = document.getElementById('results');
button.addEventListener('click', function() {
var file = fileChooser.files[0];
if (file) {
results.innerHTML = '';
var params = { Key: file.name, ContentType: file.type, Body: file, 'Access-Control-Allow-Credentials': '*', 'ACL': 'public-read' }; //key可以设置为桶的相抵路径,Body为文件, ACL最好要设置
console.log(params)
bucket.upload(params, function(err, data) {
console.log(err); //打印出错误
results.innerHTML = err ? 'ERROR!' : 'UPLOADED.';
});
} else {
results.innerHTML = 'Nothing to upload.';
}
}, false);
2.需要在aws s3中的cors进行配置如下图
附代码
*
GET
PUT
POST
DELETE
ETag
*
如果出现 TypeError: m.upload.addEventListener is not a function
查看是否在文件中引入mock把它去掉就ok了
来源:https://www.cnblogs.com/lyjfight/p/12942829.html