Web.archive 音频播放列表出现显示错误

在 Discourse 的早期版本中,archive.org 播放列表的显示效果如下:

但现在,粘贴相同的链接却会出现以下情况:你只能通过一个通用音频播放器播放第一个文件。

我不确定这是一个 bug,还是音频文件显示方式发生较大变更后的不幸结果。为了保险起见,我已将其归类到“用户体验(ux)”类别下。

另外,之前能够正确显示该功能的版本是 2.4.0.beta8(当时使用的是托管解决方案)。

2 个赞

这可能是由于新的单框允许 iframe 域名设置导致的。

1 个赞

我尝试编辑此项,但系统提示“您指定的选项 archive.org 无效”(此前也尝试过使用 http://https://),因此我将其保留为默认的 *

我实在想不通到底是什么导致它这样显示。这似乎是一个会搜索页面中可播放文件的程序,然后将其插入到它认为最合适的显示位置中,但显然这不是一个能适用于所有情况的方案,因为它没有考虑到播放列表。

我试过移除默认的“*”并留空,但结果依然相同,很遗憾。

我认为这是因为 archive.org 总是默认高亮播放列表中的第一首歌曲。

1 个赞

我原以为这是有意为之 :o 谢谢你提出来 @b481。我也很希望能获得那个包含完整播放列表的精美单盒。

3 个赞

我认为这是有意为之,属于一个更广泛的机制的一部分:它会扫描网页以查找可播放的文件(无论是视频还是音频),并将其嵌入到原生播放器中。但“一刀切”的做法在我看来并非最优,尤其对于像 Archive 这样的网站——我的网站用户非常喜欢并经常使用它们,而他们对这一改动感到非常沮丧。我希望设置中能提供相关选项,让用户可以完全禁用该功能,或者更理想的是,将特定网站从该流程中排除/加入黑名单,并恢复其原有的嵌入方式。

在新安装的环境中,当媒体播放器尝试读取单个 Archive.org 链接的数据时,我遇到了跨域错误:

跨域读取阻塞 (CORB) 阻止了跨域响应 https://archive.org/details/jrad2016-03-24.jrad2016-03-24/08+In+Memory+of+Elizabeth+Reed.mp3,其 MIME 类型为 text/html。有关更多详细信息,请参阅 https://www.chromestatus.com/feature/5629709824032768。
fetch @ fetchWrapper.mjs:111
async function (async)
fetch @ fetchWrapper.mjs:41
q @ NetworkFirst.mjs:219
makeRequest @ NetworkFirst.mjs:142
handle @ NetworkFirst.mjs:95
handleRequest @ Router.mjs:213
(anonymous) @ Router.mjs:58

实时示例在此:https://lot.almost-dead.net/t/adding-media-to-a-post/14/2?u=ufo_joe

1 个赞

https://archive.org/details/.../...Reed.mp3 的 MIME 类型为 text/html

浏览器在此处的行为是正确的——返回的数据是一个网页,而非音频文件。Onebox 代码需要修正,将其视为 OpenGraph/OEmbed 页面处理,而不是音频文件的直接链接。

音频文件的直接链接是 https://archive.org/download/jrad2016-03-24.jrad2016-03-24/08%20In%20Memory%20of%20Elizabeth%20Reed.mp3,可在“文件 > 显示全部”中找到:jrad2016-03-24.jrad2016-03-24 directory listing

4 个赞