我正在尝试找出一种将 mp3 文件存储在 OneDrive 上并使用 HTML<audio>
标签在网站上播放它们的方法。我想说的是,这是一个小网站,我这样做只是为了提供帮助(不是为了钱)。还有一些我不知道这在实际中如何运作的事情(其他限制等),但首先这里有一些初始信息:
有一个网站有多个 .mp3 文件,存储在同一台服务器上,通过 HTML 标签播放<audio>
。我知道在网站上播放音频可能有更好的方法,但对于需要的,它确实很有效。
由于网站所有者预计流量会增加,因此我试图找出一种方法来通过将 mp3 文件托管在其他地方来减少服务器负载。我研究过其他选项,但目前,所有者希望保持外观和功能相同,并且不想嵌入托管在第三方专用网站上的文件,即 SoundCloud 或其他播客网站等。
鉴于所有者已经订阅了 Microsoft 365(以前的 Office 365 - 不要让我开始更改名称),我想使用 OneDrive 作为解决方案。但是,您可能已经知道,OneDrive 不提供直接文件链接,而是提供https://1drv.ms/...
将您带到 OneDrive 页面的链接。
在对此主题进行研究时,我发现了一些可能的解决方案:
替换
.ms
为.ws
,所以现在它https://1drv.ws/...
虽然似乎有效,但问题是我不知道它在后台到底做了什么,所以我不知道在潜在的安全或隐私问题方面可能出现什么影响,尤其是看到简单地导航到https://1drv.ws/在更多信息下,它显示了一个带有中文文本的 GitHub 页面。从 OneDrive 获取嵌入代码,然后使用 resid 和 authkey 替换此链接中的代码
http://storage.live.com/items/{resid}?authkey={authkey}
。感觉就像是在开始播放之前下载整个文件。我有一个 30 多分钟的文件,速度为 128kbps,所以大约 30 MB,花了很长时间才开始播放。我再次发现了另一个建议,使用嵌入代码中的详细信息并用替换
https://onedrive.live.com/embed?cid=...&resid=...&authkey=...
单词,所以现在 这似乎与选项 1 的工作方式相同,但它使用的是官方网站。embed
download
https://onedrive.live.com/download?cid=...&resid=...&authkey=...
我不知道的另一件事与 OneDrive 可能的实际限制有关,即它是否有共享文件(下载数量或总大小)的带宽限制?
我找到了一个问题这涉及到这个话题,但微软官方的回答是在 OneDrive 中专门询问,所以可能存在限制,但他们似乎不愿意公开声明。
我确信这里我遗漏了很多东西,因此,无论是关于这种特定的 OneDrive 方式,还是从长远来看可能更好的其他方式,我都非常感谢您的意见。
先感谢您。
答案1
至少就目前而言,最好的方法是选项 3,使用嵌入代码中的链接https://onedrive.live.com/embed?cid=...&resid=...&authkey=...
并将单词替换embed
为download
,所以现在https://onedrive.live.com/download?cid=...&resid=...&authkey=...
与文件直接托管在同一服务器上时相比,首次加载网站和单击播放任何文件时都会出现轻微的延迟,但这是可以预料的,不会影响整体可用性。
此外,关于 OneDrive 带宽限制,我询问并得到了答复 - 通常共享文件没有带宽限制(下载次数或总下载大小/天或帐户等),但是文件上传通常有一个理论限制(文件数/24 小时),但一切都可能根据每个帐户而发生变化,因此您的里程可能会有所不同。