如何在extjs中的ajax请求中添加Authorization标头

时间:2017-08-17 12:40:19

标签: javascript ajax extjs asp.net-web-api2

我正在尝试在ExtJS和Web API中上传文件。为此,我需要向服务器发送一个授权标头,但每当我尝试这样做时,我在标头中得到一个空值。我也尝试在beforerequest函数中发送带有XHR请求的标头,但我仍然得到一个空值。

以下是代码:

Ext.Ajax.request({
            url: 'url',
            method: 'Post',
            headers : {'Authorization':'Bearer '+access_token},
            form: form,
            isUpload: true,
            params: {id: id},

我在某处读过,无法在表格提交中发送标题。那么有什么办法可以实现我的目标吗?

1 个答案:

答案 0 :(得分:0)

您可以像这样使用FormData对象和XMLHttpRequest来上传文件:

 var xhr = new XMLHttpRequest();

 xhr.open('POST', url, true);

 var formData = new FormData();

 for (var i= 0; i< files.length; i++) {
      var file = files[i];
      formData.append(file.name, file);
 }

 xhr.onreadystatechange = function(eOpts) {
      if (xhr.readyState !== 4 || me.isDestroyed) {
            return;
      }
      ......
 };

 xhr.send(formData);

有关FormData

的更多信息