IE9中JSONP AJAX调用错误



我正在进行jsonp呼叫,如下所示。这是一个跨域呼叫,在FF中工作良好,但在IE9中失败,我在IE中看到以下消息。

SEC7112: Script from http://site.com/a.jsp was blocked due to mime type mismatch 

我看到了这篇文章http://msdn.microsoft.com/en-us/library/gg622941%28v=vs.85%29.aspx,它说它将忽略No-Sniff响应。头信息取决于服务器?我怎么修理它?有什么变通办法吗?

$.ajax({ type: 'POST',
        url: 'http://www.othersite.com/index.jsp',
        data: 'action=delete&id=121',
        contentType: 'application/javascript',
        dataType: 'jsonp',
        success:  function(data) {
                      alert(data.fromname);
        }

MSDN中的错误显示:

如果服务器发送响应头X-Content-Type-Options: nosniff,则SCRIPT和STYLESHEET元素将拒绝MIME类型不正确的响应。这是一个安全特性,有助于防止基于mime类型混淆的攻击。

试着在你的页面的服务器端发送"X-Content-Type-Options: nosniff",如果这对ie不起作用,你只需要触摸www.othersite.com服务器头。

最新更新