关于网页版 咪咕音乐播放音频的疑问

2019-08-19 18:42:18 +08:00
 mikoshu

刚才想直接通过 audio 标签的 src 直接下载音频资源 然后发现 咪咕音乐网页版播放音乐的时候,谷歌浏览器的 dom 结构里并没有生成 audio 标签 也没有插入 flash 播放器,所以很疑惑,有大神知道这种情况下它如何完成播放音乐的操作的吗???

1932 次点击
所在节点    问与答
12 条回复
gIrl1990
2019-08-19 19:21:10 +08:00
哎,现在网站源码是越来越难审查了!
txwd
2019-08-19 19:52:27 +08:00
至于怎么播放的不清楚,没搞过这方面的,可能播放并不需要 audio 标签或暂时没找到?但可以看到音乐地址是通过 Get 返回的,直接是.mp3 。
santom
2019-08-19 19:58:49 +08:00
去看了下 ,真的很奇怪 真没有 。。。
不过发现了个可疑的文件

![image.png]( https://i.loli.net/2019/08/19/hE9OaFiWG6tcrld.png)

里面有这么一段 应该是个库吧 不知道是不是这有什么骚操作?

```javascript
/** @license
*
* SoundManager 2: JavaScript Sound for the Web
* ----------------------------------------------
* http://schillmania.com/projects/soundmanager2/
*
* Copyright (c) 2007, Scott Schiller. All rights reserved.
* Code provided under the BSD License:
* http://schillmania.com/projects/soundmanager2/license.txt
*
* V2.97a.20170601
*/
/** @license
*
* SoundManager 2: JavaScript Sound for the Web
* ----------------------------------------------
* http://schillmania.com/projects/soundmanager2/
*
* Copyright (c) 2007, Scott Schiller. All rights reserved.
* Code provided under the BSD License:
* http://schillmania.com/projects/soundmanager2/license.txt
*
* V2.97a.20170601
*/

```
santom
2019-08-19 20:00:24 +08:00
咦 。。这个格式 emmmm。markdown 语法还是不咋熟,应该能理解
mikoshu
2019-08-20 10:04:21 +08:00
@gIrl1990 是啊 各种压缩 各种骚操作
mikoshu
2019-08-20 10:04:37 +08:00
@txwd 嗯 主要现在想知道它怎么播放的
mikoshu
2019-08-20 10:05:23 +08:00
@santom emmm 我有看到这个 但是很好奇 在没有生成 audio 标签和没有插入 flash 的情况下它是怎么播放音频的 感觉很神奇
santom
2019-08-20 10:13:58 +08:00
@mikoshu 昨晚看了半天压缩码, 发现点击播放按钮 就用 jq 改变了 class 有个 n.paused 别的就没看出有啥。其实我也挺好奇 他们这些骚操作的
mikoshu
2019-08-20 10:39:39 +08:00
@santom 刚弄了个这个 soundmanager2 的 demo 试了试 确实是没有生成 audio 标签的情况下播放了音乐 一脸懵逼 然后我发现 会不会是像做图片加载这样 直接用 js new 一个 audio 标签 然后直接 play 这个 audio 标签,这样就可以再 dom 树里不生成 audio 标签直接播放了 如下代码 居然成功了 真的在 dom 上看不到 audio... 原来如此简单 估计我们都被误导的以为需要先写 audio 标签在页面里...
let audio = new Audio()
audio.src = 'http://www.schillmania.com/projects/soundmanager2/demo/mpc/audio/SPLASH_1.mp3'
audio.play()
上面代码就可以不生成 audio 播放音乐了,闹了个大乌龙
gIrl1990
2019-08-20 10:54:32 +08:00
@santom 回复里面不支持 markdown。233
santom
2019-08-20 11:26:20 +08:00
@mikoshu 昨天想到了 但是以为必须要 append 到 dom 树里 就去看的他的代码文件什么的了
@gIrl1990 咦 看他们回帖不是都支持的吗?
npe
2019-08-20 12:40:26 +08:00
开发者模式,查看网络请求,应该能抓到的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/593270

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX