sky-ossupload

web oss文件上传

Usage no npm install needed!

<script type="module">
  import skyOssupload from 'https://cdn.skypack.dev/sky-ossupload';
</script>

README

web oss 文件上传

oss 文件上传方法

注意:STS授权有效期15分钟,授权请求在createUpload中请求,意外情况请自己调用 init 方法

传参

OSS  // ali-oss依赖包
platform // 平台 (项目-空间-平台)
folder // 文件夹
bucketName // 自定义

使用方法

  1. 加载 sky-ossupload 依赖包 yarn add sky-ossupload

  2. 引入 sky-ossuplaod import {createUpload, ossUpload} from sky-ossupload

  3. 调用 ossuploda 方法

    • file 必填
let oss = createUpload(
  new ossUpload(
    {
      ...that.$OSS.request,  // 必填
      OSS, // 必填
      platform, // 默认值:iglobalwin-pub-oss  
      folder
    },
    bucketName // 自传函数 {convertFIle, init, fileUpload, checkType, checkSize}
  )
);
oss.convert(); // 获取文件信息
oss.fileUpload(); // 上传文件
oss.checkType(); // 文件类型判断
oss.checkSize(); // 文件大小判断
oss.typeMap(); // 文件类型映射
  1. 获取文件信息

    • file || ossurl 必填
    let convert = await oss.convert({file || ossurl, other})
    convert => {
       name, // 文件名
       ossName, // oss文件名
       size,  // 文件大小
       url,  // 文件地址
       type,  // 文件类型
       file,  // 上传文件
       ...other
    }
    
  2. 上传方法

    • file 必填

    let fileupload = init.fileUpload({ ...convert, uploadProgress, fileName })

  3. 文件类型

    • 文件类型 type:word, ppt, excel, html, css, js, json, vue, jpg, tif, gif, png, svg, text, code, rar, audio, video, font

    let checktype = init.checkType({...convert, type: init.typeMap.gif})

  4. 文件大小 let checksize = init.checkSize({...convert, size})