附件上传

提供统一的上传附件接口,支持单个/多个文件上传。

目前有3种上传方式:

  • 上传到本地(上传到本地文件夹)
  • 腾讯云对象存储
  • 阿里云对象存储
  • 又拍云对象存储
  • 七牛云对象存储
  • 华为云对象存储
  • ucloud对象存储
  • aws s3
  • 百度云对象存储

httpAccessPath必须可以访问到上传的地址,可以是映射等域名

上传接口

  • 接口地址/upload/upload/image
  • 请求类型POST 表单提交
  • 请求参数file 文件对象

/upload/image接口只允许上传图片

图片压缩

2.1.2版本开始支持

提供图片自动压缩处理,减少访问流量,支持以下几种图片压缩(jpg|jpeg|png)

wueasy:
  file:
    upload : #上传配置
      imageAutoZip: false #图片是否自动压缩,true是,默认false
      imageQuality: 0.2 #图片质量,默认0.5

上传到本地

把附件上传到本地文件夹中。

修改配置文件:

  • rootPath:本地文件夹的根目录,附件会上传到此文件夹
  • maxSize:上传的文件最大大小,单位M
  • httpAccessPath:http访问的根路径,配置后,文件返回的地址,会自动加上此路径
wueasy :
  file :
    upload : #上传配置
      type: local
      rootPath: D:/file #文件上传根目录
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath:   #http访问的路径

上传到腾讯云对象存储

修改配置文件:

  • maxSize:上传的文件最大大小,单位M
  • httpAccessPath:http访问的根路径,这里通常配置腾讯云对象存储访问的地址

  • secretId:APPID

  • secretKey:APP密钥
  • bucketName:bucket 的命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式
  • region:设置bucket的区域, COS地域的简称请参照 https://cloud.tencent.com/document/product/436/6224
wueasy :
  file :
    upload : #上传配置
      type: cos
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://hao54.oss-cn-hangzhou.aliyuncs.com  #http访问的路径
      os : #对象存储配置
        secretId :
        secretKey :
        bucketName : test-1251238510 #bucket 的命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式
        region : ap-shanghai #设置bucket的区域, COS地域的简称请参照 https://cloud.tencent.com/document/product/436/6224

上传到阿里云对象存储

修改配置文件:

wueasy :
  file :
    upload : #上传配置
      type: oss
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://hao54.oss-cn-hangzhou.aliyuncs.com  #http访问的路径
    os : #对象存储配置
      secretId :
      secretKey :
      bucketName : hao54 #bucket 的命名规则为{name} ,此处填写的存储桶名称必须为此格式
      region :  https://oss-cn-hangzhou.aliyuncs.com #设置bucket的区域, COS地域的简称请参照 https://help.aliyun.com/document_detail/31837.html?spm=a2c4g.11186623.6.571.3ac87f5e7vtneC

上传到又拍云对象存储

修改配置文件:

  • maxSize:上传的文件最大大小,单位M
  • httpAccessPath:http访问的根路径,这里通常配置阿里云对象存储访问的地址

  • secretId:操作员名称

  • secretKey:密码
  • bucketName:空间名称
wueasy :
  file :
    upload : #上传配置
      type: uss
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://hao54.oss-cn-hangzhou.aliyuncs.com  #http访问的路径
    os : #对象存储配置
      secretId :
      secretKey :
      bucketName : hao54

上传到七牛云对象存储

修改配置文件:

  • maxSize:上传的文件最大大小,单位M
  • httpAccessPath:http访问的根路径,这里通常配置阿里云对象存储访问的地址

  • secretId:操作员名称

  • secretKey:密码
  • bucketName:空间名称
  • region:机房区域,zone0 华东,zone1 华北,zone2 华南,zoneNa0 北美,zoneAs0 东南亚

2.3.0版本后新配置

  • region:机房区域,huadong 华东,huabei 华北,huanan 华南,beimei 北美,xinjiapo 东南亚
wueasy :
  file :
    upload : #上传配置
      type: kodo
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://hao54.oss-cn-hangzhou.aliyuncs.com  #http访问的路径
    os : #对象存储配置
      secretId:
      secretKey:  
      bucketName: fallsea
      region: zone0

上传到华为云对象存储

修改配置文件:

  • maxSize:上传的文件最大大小,单位M
  • httpAccessPath:http访问的根路径,这里通常配置阿里云对象存储访问的地址

  • secretId:操作员名称

  • secretKey:密码
  • bucketName:空间名称
  • region:Endpoint配置, OBS为每个区域提供Endpoint,用于处理各自区域的访问请求。
wueasy :
  file :
    upload : #上传配置
      type: obs
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://hao54.oss-cn-hangzhou.aliyuncs.com  #http访问的路径
    os : #对象存储配置
      secretId :
      secretKey :
      bucketName : wueasy #存储桶名称
      region: obs.cn-east-2.myhuaweicloud.com

上传到ucloud对象存储

修改配置文件:

  • maxSize:上传的文件最大大小,单位M
  • httpAccessPath:http访问的根路径,这里通常配置阿里云对象存储访问的地址

  • secretId:用户公钥

  • secretKey:用户私钥
  • bucketName:bucket名称
  • region:仓库地区 (eg: 'cn-bj')
wueasy :
  file :
    upload : #上传配置
      type: ufile
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://hao54.oss-cn-hangzhou.aliyuncs.com  #http访问的路径
    os : #对象存储配置
      secretId :
      secretKey :
      bucketName : wueasy
      region: cn-sh2

上传到aws s3对象存储

修改配置文件:

wueasy :
  file :
    upload : #上传配置
      type: s3
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://wueasy.s3.eu-west-2.amazonaws.com  #http访问的路径
    os : #对象存储配置
      secretId :
      secretKey :
      bucketName : wueasy
      region: eu-west-2

上传到百度云对象存储

修改配置文件:

  • maxSize:上传的文件最大大小,单位M
  • httpAccessPath:http访问的根路径,这里通常配置阿里云对象存储访问的地址

  • secretId:用户的Access Key ID

  • secretKey:用户的Secret Access Key
  • bucketName:空间名称
  • region:机房区域,参考:https://cloud.baidu.com/doc/BOS/s/Ojwvyrpgd
wueasy :
  file :
    upload : #上传配置
      type: obs
      maxSize: 50 #文件最大大小,单位M
      httpAccessPath: https://wueasy.cdn.bcebos.com  #http访问的路径
    os : #对象存储配置
      secretId:
      secretKey:  
      bucketName: fallsea
      region: bj.bcebos.com

接口返回结果

参数名 类型 说明
extName string 文件后缀
fileName string 文件名称
filePath string 文件地址
fileSize long 文件大小
{
  "errorNo": 0,
  "results": {
      "data": [
          {
              "extName": "jpg",
              "fileName": "architecture.jpg",
              "filePath": "https://www.wueasy.com/2019/05/07/10/d2f01651ac944fb7adef260f00a14287.jpg",
              "fileSize": 203130
          }
      ]
  }
}

配置servlet接收文件大小

spring:
  servlet:
    multipart:
      maxFileSize: 100MB
      maxRequestSize: 100MB

升级说明

2.2.0开始做了重大调整

为了更加规范,做了一下调整

  • 原有配置wueasy.cos改为wueasy.os
  • 上传类型修改:wueasy.file.upload.type
Copyright © wueasy.com 2017-2019 all right reserved,powered by Gitbook未经允许,禁止以任何形式传播 修订时间: 2020-03-05

results matching ""

    No results matching ""