阿里云OSS文件上传,后台签名方案

 时序图如上

上传回调过程是在后台封装好代码,将callback作为参数在获取签名的时候返回给前端,前端再去直接调用host进行文件直传,此时阿里云会根据是否有回调地址进行调用此接口地址;针对此回调地址可以进行具体业务处理;

大家可以先去看官方文档,基本数据在文档中都有;

概述 - 对象存储 OSS - 阿里云

踩坑指南:

  1. 回调地址未生效
  2. 上传图片无法预览只能下载
  3. 回调后处理时无法获取参数
  4. 如何处理可用或者是防盗链接地址

回调地址需要放开鉴权,具体看你服务端采用哪种鉴权方式;

接下来从后台提供两个接口,一个获取签名接口需要用户登录后使用,一个回调接口;

    /**
     * 获取签名接口
     * @return
     */
    public OssPolicyResultVo getPolicy() {
        OssPolicyResultVo result = new OssPolicyResultVo();
        // 存储目录
        String dir = ossConfigVo.getImageFilePathPrefix();
        // 签名有效期
        long expireEndTime = System.currentTimeMillis() + ossConfigVo.getFileExpireTime() * 1000;
        Date expiration = new Date(expireEndTime);
        // 回调参数
        OssCallbackParam callback = new OssCallbackParam();
        callback.setCallbackUrl(ossConfigVo.getAliyunOSSCallBack());
        callback.setCallbackBody("filename=${object}&size=${size}&mimeType=${mimeType}&height=${imageInfo.height}&width=${imageInfo.width}");
        callback.setCallbackBodyType("application/x-www-fo
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值