如何设置下载url的生命周期

以百度音乐的URL为例:

http://music.baidu.com/data/music/file?link=http://zhangmenshiting.baidu.com/data2/music/23512929/58929231353722461.mp3?xcode=46916de5bb4f17904142dc87def856f4

这个URL我们应该如何分析呢?link是文件实际地址吗?xcode的用途是什么如何生成的呢?

阅读 4.3k
1 个回答

link地址肯定不是真实的,并且文件名中包含了某个cache_key,可以找到对应的expire_time等信息。

至于xcode,也许可能大概是这么算出来的:

xcode = md5(cache_key + secret_key)

其中secret_key仅保存在服务端,保证了server端可以验证,客户端无法伪造的效果。这样这个地址在超过了某个时间以后就不能下载了,可以避免外链等问题。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题