猫妈狗爸伴宠师小程序前端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.4 KiB

10 hours ago
10 hours ago
10 hours ago
10 hours ago
10 hours ago
  1. import Crypto from '@/utils/oss-upload/common/crypto/crypto.js.js';
  2. import '@/utils/oss-upload/common/crypto/hmac.js';
  3. import '@/utils/oss-upload/common/crypto/sha1.js';
  4. import { Base64 } from '@/utils/oss-upload/common/crypto/base64.js';
  5. // 阿里云配置
  6. const ossConfig = {
  7. url: 'https://cdn.catmdogd.com/',
  8. config: {
  9. //桶的地址
  10. region: 'oss-cn-shanghai',
  11. //id
  12. accessKeyId: 'LTAI5tD3bjTBDvgmgXLTKL5X',
  13. //密钥
  14. accessKeySecret: 'wCPlCO5nnnqBekd3wxAPU6CSUto6fQ',
  15. //桶的名字
  16. bucket: 'catmdogf',
  17. endpoint: 'oss-cn-shanghai.aliyuncs.com',
  18. }
  19. }
  20. let date = new Date()
  21. date = date.setHours(date.getHours() + 1)
  22. let extime = "" + new Date(date).toISOString()
  23. let policyText = {
  24. "expiration": extime,
  25. "conditions": [
  26. ["content-length-range", 0, 1024 * 1024 * 100] // 设置上传文件的大小限制
  27. ]
  28. };
  29. let config = {
  30. accessid: ossConfig.config.accessKeyId,
  31. accesskey: ossConfig.config.accessKeySecret,
  32. osshost: ossConfig.url,
  33. policyBase64: Base64.encode(JSON.stringify(policyText))
  34. }
  35. let message = config.policyBase64;
  36. let bytes = Crypto.HMAC(Crypto.SHA1, message, config.accesskey, {
  37. asBytes: true
  38. });
  39. let signature = Crypto.util.bytesToBase64(bytes);
  40. let timetamp = new Date().getTime();
  41. let OSSConfig = {
  42. name: 'aliyun',
  43. host: config.osshost,
  44. accessid: config.accessid,
  45. signature: signature,
  46. policyBase64: config.policyBase64,
  47. }
  48. export default OSSConfig;