由于业务需要cdn的视频需要根据热点进行预加载,由于同时对接了两家cdn,今天也就抽空写了此文比较一下两家对接接口方面的优缺点:
分别从以下几点进行说明
- 请求方式
- 传递所需参数
- 返回值
- *灵活性
请求采用get方式,参数全部填充在url中,如: username、password(特殊处理)、需要预分发的url(多个url间采用 分号分隔开) 以及delayseconds。支持url是目录的情况。调用成功返回success append purge tasks…, 如果url错误 返回 ** url invalid , 验证用户名密码失败返回 md5 validate failure .
采用post + json 的方式, 有明确的json格式。(username 、password、speed、validateionType、nest_track_level 以及tasks。返回值同样为json格式 code+ msg .。同时还提供了任务发布取消、任务状态汇报接口。
nest_track_level 蓝汛的这个做法比较着人喜欢,这样可以灵活针对html 或者 m3u8 这样的特殊具有层级关系的文件进行特殊处理。
tasks 这个是个json集合,可同时预加载多个文件。但问题来了,让人又爱又恨的就是这个多个文件的验证方式 蓝汛采用了md5 (至于base没深入了解),如果预加载的是大文件,发送请求前读取本地的md5 可够费时的。
个人更喜欢蓝汛。
原文地址:http://blog.csdn.net/java_zone/article/details/45537095