我对此.aspx c#code:
有疑问protected void Page_Load(object sender, EventArgs e)
{
string url = Request["url"];
string type = Request["ext"];
if (!string.IsNullOrEmpty(url))
{
url = HttpUtility.UrlDecode(url);
WebClient client = new WebClient();
byte[] file = client.DownloadData(url);
if (file != null && file.Length > 0)
{
Response.Clear();
Response.Buffer = true;
Response.ContentType = "audio/mpeg";
Response.AddHeader("Content-Disposition", "inline");
Response.BinaryWrite(file);
Response.End();
}
}
}
除了IE之外,它在所有浏览器中都能正常工作。在IE中,<音频和GT;标签播放器显示一条神秘的消息,说“#34; Invalid Source"。没有控制台错误或警告。我猜测我的响应设置中有一个微妙的错误。以下是<音频和GT;标记,但就像我说的,它适用于除IE之外的每个浏览器。我已经不遗余力地试图让它在IE上运行 - 再一次,这是迄今为止最难处理的浏览器。经过这么多年,它已经超越令人心碎。人们到底在微软做什么了?
<audio controls="true" preload="none">
<source src="http://localhost:8056/web/Recordings/RE4cdf6a142506328787e9c88cbf7c4885.mp3" type="audio/mpeg"></source>
Your browser does not support HTML5 audio. Please consider upgrading your browser to the latest version.
</audio>
答案 0 :(得分:1)
您使用的是哪个版本的IE? HTML5与IE 9+兼容。 您将要求HTML5shiv为早于IE 9的IE浏览器提供兼容性。
如果使用IE 9,您应该使用以下内容:
<!-- Display the audio player with control buttons. -->
<audio src="http://localhost:8056/web/Recordings/RE4cdf6a142506328787e9c88cbf7c4885.mp3" controls autoplay loop>
HTML5 audio not supported
</audio>
注意:如果您正在Intranet上进行开发并且HTML5存在渲染问题,则可以添加到网页块以强制Internet Explorer使用最新标准。如果您愿意,可以将Web开发服务器配置为使用IE = edge发送元http-equiv-“X-UA-Compatible”标头。