可以使用 JavaScript 控制媒体播放器控件的显示和隐藏,同时在服务端使用 Response.Write 将音频文件内容写入 HTTP 响应流中。具体代码示例如下:
前端代码:
后端代码:
byte[] fileContent = // 从文件中读取音频文件内容
Response.ClearHeaders();
Response.ClearContent();
Response.ContentType = "audio/mpeg";
Response.AddHeader("Content-Disposition", "attachment; filename=test.mp3");
Response.BinaryWrite(fileContent);
Response.Flush();
Response.End();
在前端点击“播放音频”按钮时,会执行 JavaScript 函数 playAudio(),该函数会通过 getElementById 获取到音频播放器控件,并设置其 display 属性为 block,使其显示出来,并且通过调用 play() 方法开始播放音频。同时通过 setTimeout 函数设置播放结束后一定时间(即音频持续时间),将播放器控件的 display 属性设置为 none,使其隐藏。
在服务端,需要读取音频文件的内容,并将其写入 HTTP 响应流中,同时设置响应的 ContentType 和 Content-Disposition 属性,使浏览器能够识别并下载该音频文件。