Javascript Jquery文件上载-不在IE9中发送头

Javascript Jquery文件上载-不在IE9中发送头,javascript,http-headers,internet-explorer-9,jquery-file-upload,blueimp,Javascript,Http Headers,Internet Explorer 9,Jquery File Upload,Blueimp,我用它来上传文件。它没有向服务器发送我设置的标题。为什么授权标题仅在IE中缺失,而在chrome中传递 代码如下: upload_photo: function(){ var url = '/api/v1/upload'; $('#photoupload').fileupload({ url: url, dataType: 'json', paramName: 'uploadFile', beforeSend: function ( xh

我用它来上传文件。它没有向服务器发送我设置的标题。为什么授权标题仅在IE中缺失,而在chrome中传递

代码如下:

upload_photo: function(){
  var url =  '/api/v1/upload';
  $('#photoupload').fileupload({
      url: url,
      dataType: 'json',
      paramName: 'uploadFile',
      beforeSend: function ( xhr ) {
          setHeader(xhr);
          $("#check_progress").html('true');
      },                    
      done: function (e, responseJSON) {
          var id = responseJSON.result.id;
          url = responseJSON.result.url;
          var photo_ids = $("#photo_ids");
          var val = photo_ids.val();
          photo_ids.val(val + id.toString() + ",");
          $(".photothumb-wapper").append('<div class=\"photothumb\" id="post_photo_'+id+'"><div><img  src=\"'+url+'\" /></div><img class=\"thumb-delete photo_delete\" id=\"'+id+'\" title=\"Remove\" src=\"/assets/delete-red.png\"></div>');
          $("#check_progress").html("");
      },
      start: function (e, data) {
          $(".photothumb-wapper").append('<div class="photothumb photoprogress" style="border:none"><img src="/assets/ajax-loader.gif" /></div>');
      },
      always: function (e, data) {
          $(".photoprogress").remove();
      }
  });
}

var setHeader = function (xhr) {
    xhr.setRequestHeader('Authorization', 'Bearer fdf49c4f1cfgc176eb952f18eeefaec3e7');
};
在Chrome中传递的标头:

ResponseHeaders
  date : Tue, 04 Mar 2014 07:32:20 GMT
  Connection: Keep-Alive
  content-length:225
  content-type:application/json; charset=utf-8
  cache-control:no-cache
RequestHeaders
  Accept: application/json, text/javascript, \*/\*; q=0.01
  Authorization: Bearer fdf49c4f1cfgc176eb952f18eeefaec3e7
  X-Requested-With: XMLHttpRequest
为什么IE中缺少授权标题?

回答了我的问题


只有支持XHR文件上载的浏览器才支持设置自定义标题。

作为旧浏览器(如我们的亲爱的IE)中的一种解决方法,您可以在用户进行身份验证时使用身份验证令牌设置cookie,然后将其放入服务器,并以与验证标题相同的方式进行验证。我知道这不是最优雅的解决方案,但它很有效。

Dupilcate of@Jibi-No。手动传递标头没有帮助。在IE9中仍然没有传递授权,因为它在IE10、chrome、FFSo中运行良好,所以您根本无法设置头?你找到解决办法了吗?我也有同样的问题:我们所有的请求都需要一个授权头来上传文件。
ResponseHeaders
  date : Tue, 04 Mar 2014 07:32:20 GMT
  Connection: Keep-Alive
  content-length:225
  content-type:application/json; charset=utf-8
  cache-control:no-cache
RequestHeaders
  Accept: application/json, text/javascript, \*/\*; q=0.01
  Authorization: Bearer fdf49c4f1cfgc176eb952f18eeefaec3e7
  X-Requested-With: XMLHttpRequest