我已经通过wiki进行了搜索,但找不到答案我应该将我的附加标头(例如Authorization
标头)放在 JS 脚本中的哪个位置?某处onSend
/beforeSend
或?
问问题
17879 次
5 回答
28
这就是我将文件名添加为标题的方式:
$('#upload_btn').fileupload({
singleFileUploads: true,
beforeSend: function(xhr, data) {
var file = data.files[0];
xhr.setRequestHeader('X-FileName', file.name);
},
});
于 2013-05-07T17:32:13.423 回答
12
您是否尝试通过“options.headers”对象设置其他标题?
如果使用forceIframeTransport: true选项(IE 不支持 XHR 文件上传,您需要使用隐藏的 iframe 方法),那么修改标题不是一个选项:https ://github.com/blueimp/jQuery-File-Upload /问题/654
Options.headers:http ://api.jquery.com/jQuery.ajax/
为文件上传插件设置的选项被传递给 jQuery.ajax() 并允许定义任何 ajax 设置或回调。
于 2012-04-05T16:55:10.410 回答
10
试试这样的..
beforeSend: function(xhr) {
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Content-type", "application/json; charset=utf-8");
}
于 2012-04-05T16:34:51.403 回答
2
答案很简单:只需在添加部分添加您的自定义标题
add: function (e, data) {
data.headers={'X-Session-Id' : data.files[0].name.hashCode()};
data.context = $('<button/>').text('Upload')
.appendTo(document.body)
.click(function () {
data.context = $('<p/>').text('Uploading...').replaceAll($(this));
// naam = naam.hashCode();
data.submit();
});
},
或在初始化中:
$('#fileupload').fileupload({
dataType: 'json',
multipart : false,
maxChunkSize: 10 * 1024 * 1024,
headers:data.headers={'X-Session-Id' : "TEST-HEADER"},
于 2013-10-12T13:37:46.543 回答
1
这是我的实现
onSend: function(e, options) {
var accessToken = ...;
options.headers = {
'Authorization': 'Bearer ' + accessToken
};
},
于 2013-03-05T20:40:23.250 回答