我正在尝试播放一个WAV文件,我在HTTP处理程序中动态生成并设置HyperLink控件的NavigateUrl属性:
<asp:HyperLink runat="server" NavigateUrl="~/ServeAudio.ashx" Text="Play Sound" ImageUrl="~/images/speaker_louder_32.png"
ToolTip="Play Sound"></asp:HyperLink>
但是当我点击该链接时,它会打开Windows Media Player - 我不希望这样。我只想播放声音。
我也尝试过使用一些jQuery插件,如果我有一个固定的WAV文件URL,它们似乎可行,但如果我将URL设置为我的HTTP处理程序,它们就不起作用。
有什么想法吗?提前谢谢。
答案 0 :(得分:3)
使用像Fiddler这样的HTTP分析器或浏览器开发工具(如Firebug(或IE上的开发工具))来查看直接访问WAV文件时发送的HTTP标头。
然后通过使用HttpResponse.AppendHeader Method设置HTTP标头来模拟处理程序中的HTTP标头。可能是这样的:
Response.AppendHeader("Content-Type", "audio/x-wav");
另一个可能有用的技巧是制作网址,因此它看起来像一个文件(如果你可以使用适当的HTTP标头,你不应该这样做):
"~/ServeAudio.ashx/my.wav"