我想使用Ext.Ajax.request
上传文件。因此,我添加了文件输入字段(form: formId
)的id。我还想在请求中添加一些标头(Accept
,Authorization
,...),这在我不添加form
参数时有效。但是,当设置表单参数时,无论出于何种原因,我的标题都将被忽略。
我使用ExtJs 6.2现代版。
如果将表单参数设置为请求,我该如何添加标题?
Ext.Ajax.request({
cors: true,
useDefaultXhrHeader: false,
method: 'POST',
url: someUrl,
headers: {
'Accept': 'application/json',
'Authorization': someString,
'usertoken': someString
},
params: {
name: fileName,
override: false
},
isUpload: true,
form: formId
})
答案 0 :(得分:0)
当您使用表单选项发出请求时,它实际上不是Ajax请求,因此您无法传递额外的标头。
来自Docs
文件上传不是使用普通的“Ajax”技术执行的,即不使用XMLHttpRequests执行。而是以标准方式提交表单,其中DOM元素被临时修改以使其目标设置为引用动态生成的隐藏,其被插入到文档中但在收集返回数据后被删除。