|
import Crypto from '@/utils/oss-upload/common/crypto/crypto.js.js';
|
|
import '@/utils/oss-upload/common/crypto/hmac.js';
|
|
import '@/utils/oss-upload/common/crypto/sha1.js';
|
|
import { Base64 } from '@/utils/oss-upload/common/crypto/base64.js';
|
|
import ossConfig from '@/config.js'
|
|
|
|
let date = new Date()
|
|
date = date.setHours(date.getHours() + 1)
|
|
let extime = "" + new Date(date).toISOString()
|
|
let policyText = {
|
|
"expiration": extime,
|
|
"conditions": [
|
|
["content-length-range", 0, 1024 * 1024 * 100] // 设置上传文件的大小限制
|
|
]
|
|
};
|
|
let config = {
|
|
accessid: ossConfig.aliOss.config.accessKeyId,
|
|
accesskey: ossConfig.aliOss.config.accessKeySecret,
|
|
osshost: ossConfig.aliOss.url,
|
|
policyBase64: Base64.encode(JSON.stringify(policyText))
|
|
}
|
|
|
|
let message = config.policyBase64;
|
|
let bytes = Crypto.HMAC(Crypto.SHA1, message, config.accesskey, {
|
|
asBytes: true
|
|
});
|
|
let signature = Crypto.util.bytesToBase64(bytes);
|
|
let timetamp = new Date().getTime();
|
|
let OSSConfig = {
|
|
name: 'aliyun',
|
|
host: config.osshost,
|
|
accessid: config.accessid,
|
|
signature: signature,
|
|
policyBase64: config.policyBase64,
|
|
}
|
|
export default OSSConfig;
|