| 4 | let ossClient: OSS; |
| 5 | let endpoint = '/'; |
| 6 | export async function initOSS() { |
| 7 | const [, token] = await fetch('getSTS'); |
| 8 | if (token?.enable) { |
| 9 | // @ts-ignore |
| 10 | ossClient = new OSS({ |
| 11 | region: token.region, |
| 12 | accessKeyId: token.AccessKeyId, |
| 13 | accessKeySecret: token.AccessKeySecret, |
| 14 | stsToken: token.SecurityToken, |
| 15 | bucket: token.bucket, |
| 16 | }); |
| 17 | if (token.endpoint) { |
| 18 | endpoint = `//${token.endpoint}/`; |
| 19 | } |
| 20 | |
| 21 | const OneHour = 1000 * 60 * 60; |
| 22 | setInterval(async () => { |
| 23 | const [, refreshToken] = await fetch('getSTS'); |
| 24 | if (refreshToken?.enable) { |
| 25 | // @ts-ignore |
| 26 | ossClient = new OSS({ |
| 27 | region: refreshToken.region, |
| 28 | accessKeyId: refreshToken.AccessKeyId, |
| 29 | accessKeySecret: refreshToken.AccessKeySecret, |
| 30 | stsToken: refreshToken.SecurityToken, |
| 31 | bucket: refreshToken.bucket, |
| 32 | }); |
| 33 | } |
| 34 | }, OneHour); |
| 35 | } |
| 36 | } |
| 37 | |
| 38 | export function getOSSFileUrl(url = '', process = '') { |
| 39 | const [rawUrl = '', extraPrams = ''] = url.split('?'); |