coa-ali-oss
    TypeScript icon, indicating that this package has built-in type declarations

    1.1.0 • Public • Published

    coa-ali-oss

    GitHub license npm version npm downloads PRs Welcome

    轻量的阿里云 OSS 库 for Node.js

    来源于一个实际生产项目,将常用的 API 和业务解耦后封装成此库,尚未覆盖到阿里云 OSS 的全部操作。后续会根据实际使用情况优化和扩充新的服务。若需用到其他完整接口,可以直接使用阿里云官方 SDK ali-oss

    特征

    • 轻量 相对于官方的 SDK,无第三方依赖,更轻量
    • COA 友好 配合 COA 使用,效率更高,报错信息更友好
    • TypeScript 使用 TypeScript 编写,类型约束,IDE 友好

    用法

    安装

    yarn add coa-ali-oss

    创建配置实例

    import { CoaAliOssBin } from 'coa-ali-oss'
    
    // bucket配置
    const ossBucketConfig = {
      accessKeyId: 'LTAIOKxxxxxxWSue9q',
      accessKeySecret: 'pyTLRH0sGooAxxxxxxxxxxxxxxxxxANqPedamD',
      region: 'oss-cn-shanghai',
      bucket: 'bucket-name',
      origin: 'https://example.coajs.com/',
    }
    
    // 创建一个配置实例
    const ossBucketBin = new CoaAliOssBin(ossBucketConfig)

    操作 Object

    操作 Object 的原始 API 详见 阿里云帮助文档

    import { CoaAliOssObjectService } from 'coa-ali-oss'
    
    // 创建一个Object服务
    const objectService = new CoaAliOssObjectService(ossBucketBin)
    
    // 获取前端上传图片所需的token,图片路径前缀必传
    // 前端上传图片机制详见 https://help.aliyun.com/document_detail/31926.html
    await objectService.token('user/avatar')
    
    // 从服务器获取数据
    await objectService.get('user/avatar/001.png')
    
    // 从服务器获取元信息数据
    await objectService.head('user/avatar/001.png')
    
    // 将服务器文件下载到本地
    await objectService.download(
      'user/avatar/001.png',
      '/local-path/avatar/001.png'
    )
    
    // 将Buffer写入服务器
    await objectService.put(
      'user/avatar/002.png',
      Buffer.from([
        /*buffer数据*/
      ])
    )
    
    // 将本地文件上传到服务器
    await objectService.download(
      'user/avatar/002.png',
      '/local-path/avatar/002.png'
    )
    
    // 将服务器上文件复制到另一个地方
    await objectService.copy('user/avatar/001.png', 'new/avatar/001.png')
    
    // 删除服务器上的文件
    await objectService.delete('user/avatar/002.png')
    
    // 获取图片的基本信息
    await objectService.imageInfo('user/avatar/001.png') // { width:1280, height:720, fileSize:160000 }

    Install

    npm i coa-ali-oss

    DownloadsWeekly Downloads

    0

    Version

    1.1.0

    License

    MIT

    Unpacked Size

    14 kB

    Total Files

    13

    Last publish

    Collaborators

    • adaex