我试图通过ajax使用UploadCollection以便通过发布请求发送文件,但是由于某种原因,文件已被上传,但是永远无法打开o可视化,因为文件似乎在后端坏了(SAP网关)。
这是我使用UploadCollection获取文件的方式
new sap.m.UploadCollection({
id: 'upFiles',
numberOfAttachmentsText: 'Adjuntar archivos',
showSeparators: 'All',
fileType: ['jpg','jpeg','png','pdf','ods','pptx','xlsm','docx','doc', 'odt', 'docm','ppt','xlsx','rar','zip'],
noDataText: 'No se han cargado archivos todavia',
class: 'docpago-upload',
uploadUrl: '/sap/opu/odata/SAP/ZGWRE_WF_FILES_SRV/WfFileCollectionSet',
maximumFilenameLength: 120,
maximumFileSize: 10,
multiple: true,
uploadEnabled: true,
terminationEnabled: true,
change: function(oEvent) {
var file = oEvent.getParameter("files");
var numfiles = oEvent.getParameter("files").length;
if(numfiles > 10){
MessageBox.show("Máximo de cargas multiples permitido es de 10");
oEvent.setCancelBubble(true);
oEvent.cancelBubble(); // para detener el proceso...
}else{
subeArchivos = true;
$.each(file, function(i, val) {
console.log(val);
fixname = val.name;
filename = fixname.substring(0, fixname.indexOf("."));
extension = fixname.substring(fixname.indexOf(".") + 1);
//console.log('nombre archivo: ' + filename)
//console.log('extension archivo: ' + extension)
var obj = {
'filename': filename,
'extension': extension
};
files.push(obj);
});
}
}
});
这是Iam尝试使用Ajax发送这些文件的方式
jQuery.ajax({
url: sUrlUpload,
type: "POST",
data: file, //Files I want to upload
contentType: "application/json",
datatype : "text",
headers: {
'X-CSRF-Token': token, //token generated to send request
'slug': slug //a parameter I need to do some stuff
},
success: function (data, textStatus, XMLHttpRequest) {
console.log('Uploaded files: ' + JSON.stringify(data));
},
error: function(oError) {
console.log('Error: ' + JSON.stringify(oError.responseText))
}
});
由于某种原因,在sap网关端,文件成功上传,但由于程序显示“格式无效”,“文件损坏”等原因,甚至无法打开单个文件。
我不确定什么?我被要求通过ajax并以xstring格式一次发送文件。但我不确定如何获取每个文件的xstring