我使用精美的上传器在服务器上传文件,为此我需要进行2次web api调用。
单击按钮,首先保存web api并返回整数结果,我需要在上传时将每个文件的标题中的整数结果传递给它。 但是我无法在标题中传递值,
代码,
uploader = new qq.FineUploader({
element: $('#manual-fine-uploader1')[0],
request: {
endpoint: Url.AddEvaluationFiles,
},
autoUpload: false,
text: {
uploadButton: '<i class="icon-plus icon-white"></i> Select Files'
},
debug: true,
callbacks: {
onSubmit: function (id, fileName) {
},
onStatusChange: function (id, oldStatus, newStatus) {
if (newStatus == "uploading") {
alert("Add header");
}
},
onUpload: function (id, name) {
alert("Onupload");
this.append("RequestId", $("#ReqId").val());
}
}
});
我在第一次请求的成功块中调用上传功能,
$.ajax({
type: "POST",
url: Url.Details,
data: fileData,
async: false,
success: function (result) {
if (result == 0) {
toastr.error("Please pass user id");
} else {
$("#ReqId").val(result);
alert($("#ReqId").val());
uploader.uploadStoredFiles();
}
},
error: function (err) {
toastr.error("Not able to upload art details");
}
});
这里我想在onUpload事件中传递RequestId标头,但它不起作用,我需要做些什么改变才能实现。
答案 0 :(得分:1)
request
选项具有customHeaders属性,允许您设置任何自定义标头。
您的构造函数调用应该类似于
artistmanualuploader = new qq.FineUploader({
...
request: {
endpoint: "FoaUrl.AddEvaluationFiles",
customHeaders: {
"EvaluationRequestId": $("#CurrentEvaluationReqId").val()
}
},
...
});