高级配置:profile

飞布的文件上传还支持高级配置。主要实现3个功能:匿名登录、文件限制以及文件钩子。

  • 匿名登录很简单,只需要开启即可。后续上传文件,无需登录。

  • 文件限制,支持最大文件尺寸,文件类型、文件后缀等的限制。需要注意到的是,文件数量 需要由客户端限制,该参数用于生成客户端SDK时,限制数量。

  • 文件钩子,允许用户在飞布上传文件到OSS之前和之后编写自定义逻辑,修改上传行为。

相关配置:

操作步骤:

  1. 在文件存储面板中,选择列表项,右击点击“新建Profile”

  2. 重命名Profile名称,并填写基本设置(meta和钩子后续讲解)

使用profile,需要在上传文件的请求头中增加X-Upload-Profile字段,该字段为枚举类型,从profile中选择。

curl 'http://localhost:9991/s3/[s3-name]/upload?directory=test' \
  # 设置Profile名称,从枚举值中选择
  -H 'X-Upload-Profile: avatar' \
  -H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryGB1RSwk0aZy4QW9J' \
  # 可选,根据是否开启匿名登录判断
  -H 'Cookie: user=xxx; id=xxx=; csrf=xx;' \
  -H 'accept: application/json' \
  --data-raw $'------WebKitFormBoundaryGB1RSwk0aZy4QW9J\r\nContent-Disposition: form-data; name="file"; filename="108*108.png"\r\nContent-Type: image/png\r\n\r\n\r\n------WebKitFormBoundaryGB1RSwk0aZy4QW9J--\r\n' \
  --compressed

一旦开启profile,则必须要设置X-Upload-Profile,也意味着普通上传路由会失效!

最后更新于