Javascript 是否有办法将整个音频文件从数据库导入HTML,并将该文件用作<;音频>;标签?
我一直在写一个生成旋律的程序,我想制作一个论坛模板,让每个人都能看到别人做了什么。为此,我打算用SQL将文件保存为wave缓冲区,然后将其粘贴到标记中:Javascript 是否有办法将整个音频文件从数据库导入HTML,并将该文件用作<;音频>;标签?,javascript,html,mysql,sql,flask,Javascript,Html,Mysql,Sql,Flask,我一直在写一个生成旋律的程序,我想制作一个论坛模板,让每个人都能看到别人做了什么。为此,我打算用SQL将文件保存为wave缓冲区,然后将其粘贴到标记中: <!DOCTYPE html> <html language="en"> <head> <title> forum </title> </head> <body&g
<!DOCTYPE html>
<html language="en">
<head>
<title>
forum
</title>
</head>
<body>
{% for solos in solos %}
<table>
<thead>
<tr>
<th>{{ solos.date }} - {{ solos.title }}</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<audio controls preload="auto">
<source = '{{ solos.song }}'>
</td>
</tr>
</tbody>
</table>
{% endfor %}
</body>
</html>
论坛
{独奏%中的独奏%}
{{solos.date}}-{{solos.title}
{%endfor%}
但是,它没有播放任何声音,我怀疑这是因为源标记无效。
如何解决此问题?我建议您将音频文件保存在服务器的单独文件夹中,而不是数据库中。在数据库中,您可以有一个表来保存每个文件的信息(id、名称、格式、作者、路径等)。然后,每当您想要检索某个特定的音频文件时,就转到db获取路径,并返回该路径中的文件。通过这种方式,您可以在HTML中使用音频标记,而不用担心文件格式
在数据库中保存blob文件通常效率低下,特别是当您的想法是将它们提供给客户时。您很可能是对的,我应该这样做。我想把它直接放在数据库中,因为我正在做一个有严格大小限制的项目,但我认为这个文件在数据库中的重量差不多。你说得对。将文件保存在db中没有什么好处,您可以在这里查看->我认为这些好处不值得,tbh。根据我的经验,我从未遇到过文件保存在数据库中的情况。