快速搭建移动应用直传服务

本教程帮助您在30分钟内搭建一个基于OSS的移动应用数据直传服务。所谓直传就是移动应用的数据的上传和下载直接连接OSS,只有控制流走用户自己的服务器。

背景

这是一个移动互联的时代,手机APP上传的数据越来越多。把数据存储的问题交给OSS,能够让开发者更加专注于自己的应用逻辑。

优势

搭建一个基于OSS的移动应用数据直传服务,具有以下优势:

安全的上传下载方式(临时、灵活的赋权鉴权)
成本低(用户不需要准备很多服务器,因为移动应用直联云存储,只有控制流走用户自己的应用服务器)
高并发,支持海量用户(OSS有海量的上传和下载带宽)
弹性(OSS有无限扩容的存储空间)
方便(可以方便的对接到媒体转码服务-视频多端适配,图片处理服务,CDN加速下载等)
架构图

 


详细可以参考这里。

角色解析

Android/iOS 移动应用,即最终用户手机上的APP。
OSS,即阿里云对象存储,负责存储APP上传的数据,可以参考官网介绍。
RAM/STS负责生成临时上传凭证。
用户应用服务器,即提供该Android/iOS应用的开发者开发的APP后台服务,管理APP上传和下载的Token,以及用户在APP上传数据的元数据信息。
数据流解析

应用向用户的应用服务器申请一个临时上传凭证。
Android/iOS应用不可能直接存储AccessKeyID/AccessKeySecret,这样会存在泄密的风险。所以应用必须向用户的应用服务器申请一个临时上传凭证(下文将此临时上传凭证称为Token),注意这个Token是有时效性的,如这个Token的过期时间是30分钟(这个时间可以由应用服务器指定),那么在这30分钟里面,该Android/iOS应用可以使用这个Token从OSS上传和下载数据, 30分钟后再重新获取。
用户的应用服务器检测上述请求的合法性,然后返回Token给应用。
手机拿到这个Token后就可以将数据上传到OSS,或者从OSS下载数据了。
本教程主要介绍下述红色和蓝色框的内容。


蓝色框:应用服务器如何生成这个Token
红色框: Android/iOS应用如何获取Token

posted @ 2016-12-22 09:05  shuijinggz  阅读(300)  评论(0编辑  收藏  举报