laravel - SoundCloud 如何设法将流式 mp3 歌曲拆分为多个链接的分区,以使浏览器无法将其作为一整首歌曲抓取?
问题描述
我相信 SoundCloud 针对未经授权的歌曲下载所采取的一项安全措施是以小块的形式提供文件,这对于想要在浏览器中抓取文件的任何人来说都变得困难和乏味,因为他们必须抓取每一个小块然后加入所有的块在一起。在播放 mp3 时检查浏览器开发人员选项卡后,您将获得如下所示格式的 url:
https://cf-hls-media.sndcdn.com/media/1755845/1915505/dgLokH08YWc2.128.mp3?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiKjovL2NmLWhscy1tZWRpYS5zbmRjZG4uY29tL21lZGlhLyovKi9kZ0xva0gwOFlXYzIuMTI4Lm1wMyIsIkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTUyNTk0ODMzNH19fV19&Signature=TAKhcRFG2PvmDCoBC6oPEKx1EYyr28IER7n13~ajFiK95KwbNxyMC5qIfSBOxL9DSv4X24eaHKDvOOTurCfNnpugq6xUt0KG6gsquBGbpX4O3CT90M1AOHVgC92kmsIjqwne3ePKVxrjqjolrYS09QaEv1z8KCPEJlbSMy8~OxXTObgP6hoReBVXO8HEmzEWiF1siTwfedjgkUAzygzuE7X8pz1BTpze51ZYGSNCQ4OM6eEMsTl~cxdSSZoovGttfpgFMDC2oHV0S1idsj--t2GDrS9G5fWbGPl4TtPQl92c~nD9ouryzf3Lb2ewE2xeUM7nISSJtHYD4ltxNplt~A__&Key-Pair-Id=APKAJAGZ7VMH2PFPW6UQ
我的问题:您能告诉我实现这一目标的最佳方法吗?1. 拆分是在客户端JS还是在服务端?(在我的特殊情况下,我使用 PHP Laravel 来提供文件)。2.如果我使用mediaelement js播放器播放文件,如何按顺序加入块并不间断播放?
提前致谢。
解决方案
推荐阅读
- javascript - 使用 VBA 登录网站不取值(取键盘输入值)
- javascript - 如何在 keyIsDown 函数中使用 ASCII 码
- javascript - 使用 Vue.extend 时使用来自 SFC 的 I18n 翻译消息
- json - Oracle中如何使用json格式获取值
- angular - Angular textarea matInput:如何设置最大长度/行+最大行数
- c# - 来自 Enumerable 结果的 Concat 字符串
- ruby-on-rails - 导轨 | 迁移缺失 | 在本地工作,但不在 Heroku 上
- scala - Fork Join 与通用 monad scala?
- javascript - 平衡化学方程式
- python - 使用 sklearn 计算关键字的频率仅产生零计数