s3图床
# 创建s3存储桶
# 启动传输加速
记录下传输加速终端节点
# 前端配置
selfUploadMethod(fileObj) {
const AWS = require('aws-sdk');
const AWS_CONFIG = {
region: 'eu-central-1',
s3BucketEndpoint: true,
s3ForcePathStyle: false, /* 这个改成true会在地址中加上bucket */
endpoint: 'https://birenchong-img.s3-accelerate.amazonaws.com'
}
const BUCKET_CONFIG = {
bucket: 'birenchong-img',
key: {
accessKeyId: 'A**************V',
secretAccessKey: 'V************************************h'
}
}
const file = fileObj.file;
const key = this.defaultFileKey
? this.getDefaultFileKey(file.name)
: this.getFileUploadKey(file.name);
let params = {
Bucket: BUCKET_CONFIG.bucket /* 储存桶名称 */,
Key: key /* 储存地址及文件名 */,
Body: file //文件流
};
let s3 = new AWS.S3(Object.assign({}, AWS_CONFIG, BUCKET_CONFIG.key));
s3.upload(params, (err, data) => {
if (err) {
_g.message(err.message, "error");
fileObj.onError(err.message, file, []);
} else {
fileObj.onSuccess(data, file);
}
});
},
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# 跨源资源共享(CORS)
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"PUT",
"POST",
"DELETE"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": [
"x-amz-server-side-encryption",
"x-amz-request-id",
"x-amz-id-2",
"ETag"
],
"MaxAgeSeconds": 3000
}
]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Last Updated: 2023/11/08, 14:45:54