【搞笑】博客中js音乐播放问题,直链你最好有事

BUG
在本地主机上可以使用Web Audio API中的 .play 播放音乐直链的音频,但在安全域名上则不行,控制台显示410错误。
分析
因为在本地主机上可以访问直链,首先排除直链的问题。然后我怀疑是音频加载和dom节点的加载有时间差,导致无法播放,使用 setTimeout 延迟播放后还是不行。
1 | setTimeout(function() { xxx; }, 5000); //5秒后将会调用执行xxx函数 |
我们先分析下410和404。
404代码表示请求的资源当前不可用,但它可能在未来的请求中可用。相反,410代码是一个明确的指示,表明所请求的资源曾经存在,但它已被永久删除并且不会将来可用。因此,404响应代码表示用户代理(浏览器)可以重复对同一资源的请求URI,而 410告诉用户代理不要重复对同一资源的请求。
难道资源真的没了?于是我直接打开了那个音频的直链,结果真的是410,笑死我了,原来直链真的崩了,我猜测直链是有生命周期的,每隔一段时间就会更新。但是奇怪的是在本地主机上访问直链可以,就很离谱,咱也不懂,咱也不敢问。
解决方法
打算换个直链,我找了半天酷我的api,找了半天没找到,就找到一个跨域的,直接用js不行,先贴上网站以后备用吧。https://www.homedt.net/25515.html
后来我发现一个教程,听说网易云的直链很好扒,于是就换成了网易云的直链了,真的可以了(不过还是只能解析非会员的。
评论