检测是否启用了cors?

时间:2016-03-06 17:36:31

标签: javascript cors

如何通过javascript检测是否在html5音频元素的远程文件上启用了cors?

我想输出附加到AudioContext的可视化工具,只要音频标签的远程src文件启用了cors。

1 个答案:

答案 0 :(得分:3)

只需在加载资源之前通过javascript请求文件,并检查 access-control-allow-origin 标头的响应标头。

如果资源有标题,请使用资源'更新标记的src属性。 URL。

从请求中检查标头的jQuery示例:

var audioSource = 'mysite.com/audiosource.ogg';
$.get( audioSource, function( data, textStatus, request) {
    var header = request.getResponseHeader('access-control-allow-origin');

    if(typeof header !== 'undefined') {
         $('#audiotag').attr('src', audioSource);
    }
});

值得注意的是如果设置了access-control-allow-origin标头,并且您没有从正确的域请求您将被禁止无论如何加载资源