科尔斯媒体混乱

时间:2015-06-23 00:24:26

标签: python asp.net html5 http cors

我和cors有问题。

我正在尝试访问我在其他计算机上提供的网页上的一台服务器上的mp3。

服务器已设置为。 https://gist.github.com/fxsjy/5465353

当我直接访问路径时,一切正常。

<httpProtocol>
  <customHeaders>
    <add name="Access-Control-Allow-Origin" value="*" />
    <add name="Access-Control-Allow-Methods" value="POST, GET, OPTIONS" />
    <add name="Access-Control-Allow-Headers" value="Content-type, Content-Length,Date,Last-Modified,Server" />
  </customHeaders>
</httpProtocol>

我的web.config中有上一个,我的html上有以下内容。

<audio id="myAudio"
       controls="controls"
       src="http://{A IP}:{A PORT}/{A File Path}/{A file}.mp3"
       type="audio/mpeg">
    Your user agent does not support the HTML5 Audio element.
</audio>

页面响应标题是:

HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html; charset=utf-8
Content-Encoding: gzip
Vary: Accept-Encoding
Server: Microsoft-IIS/8.0
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
X-SourceFiles: =?UTF-8?B?QzpcVXNlcnNcc2Vhbi5oYW5zZm9yZFxEcm9wYm94XE11c2ljbzJcTXVzaWNvMlxNdXNpY28yXEhvbWVcVGVzdA==?=
X-Powered-By: ASP.NET
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-type, Content-Length,Date,Last-Modified,Server
Date: Tue, 23 Jun 2015 00:20:11 GMT
Content-Length: 1233

当我把Mp3文件放在本地时,我可以远程访问它。

MediaElementAudioSource outputs zeroes due to CORS access restrictions for http://{A IP}:{A PORT}/{A File Path}/{A file}.mp3

作为chrome控制台中的错误。 Firefox加载时没有错误但什么也没做。

对mp3的两个请求都返回为200。

响应标题是。

HTTP/1.0 200 OK
Server: SimpleHTTP/0.6 Python/2.7.9
Date: Tue, 23 Jun 2015 00:20:12 GMT
Content-type: audio/mpeg
Content-Length: 2882414
Last-Modified: Mon, 07 Feb 2011 10:31:23 GMT

任何人都可以看到我做错了什么:(?

1 个答案:

答案 0 :(得分:1)

所以不要问我为什么,但在我的音频标签中添加crossorigin =“anonymous”可以解决问题......

        <audio id="myAudio"
               controls="controls"
               src="TUNE.mp3"
               type="audio/mpeg"
               crossorigin="anonymous">

请参阅https://bugzilla.mozilla.org/show_bug.cgi?id=937718

此外,我必须添加到服务器响应。