博客
关于我
OSS直传与UXCore-Uploader实践
阅读量:794 次
发布时间:2023-02-26

本文共 1203 字,大约阅读时间需要 4 分钟。

OSS直传方案探讨:从传统到服务端签名优化

在视联网业务中,图片、视频等大数据文件的存储对OSS接入产生了重要需求。本文将从传统WEB端直传方式到服务端签名优传的过程进行分析。

传统WEB端直传的痛点

传统的WEB端直传方式通常包括以下步骤:用户在浏览器或APP中上传文件至应用服务器,随后应用服务器再将文件上传至OSS。这种方式虽然常用,但存在以下问题:

  • 上传速度慢:数据需要经过应用服务器再次上传,网络传输效率较低。直接将文件发送至OSS可大幅提升传输效率,尤其是在采用BGP带宽的OSS环境中。

  • 扩展性差:随着用户数量增加,应用服务器可能成为性能瓶颈。

  • 成本高:OSS上传流量通常是免费的,直接直传至OSS可节省维护应用服务器的成本。

  • 服务端签名后直传的解决方案

    针对上述问题,服务端签名后直传方式提供了更优的解决方案。这种方式通过在客户端生成签名,确保文件完整性和合法性,从而实现高效的OSS直传。

    UXCore-Uploader的技术优势

    在实际应用中,我们选择了UXCore-Uploader进行OSS直传。该工具具备以下特点:

    • MD5秒传功能:确保文件完整性验证。

    • 分片上传:支持大文件上传。

    • 多种运行时环境支持:包括HTML5和Flash。

    • 灵活的收集器配置:支持DndCollector、PasteCollector、PickerCollector等多种文件集成方式。

    • 支持ES6规范:确保代码的现代化和兼容性。

    实现服务端签名直传

    具体实现步骤如下:

  • 获取后端签名信息:通过fetch请求获取签名认证信息URL,提取所需参数并配置Uploader。

  • Uploader配置:根据项目需求配置accept属性,指定支持的文件类型,并设置URL和参数。

  • 处理OSS返回数据:由于OSS返回数据中缺少response字段,需要通过UploadCore的钩子进行数据处理和定制。

  • 问题与解决方案

    在实际应用中,我们遇到了以下问题:

  • OSS返回数据缺少response字段:导致Uploader报错。

  • 解决方案:通过修改UploadCore的onfileuploadcompleting钩子,手动添加response字段,确保上传完成后的数据处理正确。

  • 优化与改进

  • 钩子机制优化:将签名认证信息获取逻辑放入onfileuploadpreparing钩子中,提升代码可维护性。

  • 上传完成处理:在onfileuploadcompleted钩子中获取上传完成的相关信息,确保数据正确获取和处理。

  • 总结

    本文通过从传统WEB端直传到服务端签名优传的过程,探讨了使用UXCore-Uploader在OSS直传中的应用场景和优化方法。通过对OSS返回数据的处理和对UploadCore钩子的灵活运用,我们成功解决了直传过程中的问题。UXCore-Uploader的灵活性和可扩展性使其成为OSS直传的理想选择。

    转载地址:http://hfvfk.baihongyu.com/

    你可能感兴趣的文章
    OpenCV与AI深度学习 | 基于Python和OpenCV将图像转为ASCII艺术效果
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch实现Faster RCNN目标检测
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch语义分割实现洪水识别(数据集 + 源码)
    查看>>
    OpenCV与AI深度学习 | 基于YOLO11的车体部件检测与分割
    查看>>
    OpenCV与AI深度学习 | 基于YOLOv8的停车对齐检测
    查看>>
    OpenCV与AI深度学习 | 基于机器视觉的磁瓦表面缺陷检测方案
    查看>>
    OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
    查看>>
    Opencv中KNN背景分割器
    查看>>
    OpenCV中基于已知相机方向的透视变形
    查看>>
    opencv之模糊处理
    查看>>
    opencv保存图片路径包含中文乱码解决方案
    查看>>
    opencv图像分割2-GMM
    查看>>
    OpenCV学习(13) 细化算法(1)(转)
    查看>>
    OpenCV探索
    查看>>
    opencv笔记(1):图像缩放
    查看>>
    OpenCV(1)读写图像
    查看>>
    OpenCV:概念、历史、应用场景示例、核心模块、安装配置
    查看>>
    Openlayers Source基础及重点内容讲解
    查看>>
    openlayers 入门教程(八):Geoms 篇
    查看>>
    Openlayers中点击地图获取坐标并输出
    查看>>