Я пытаюсь использовать UploadCollection с ajax для отправки файлов через почтовый запрос, но по какой-то причине файл загружен, но его невозможно открыть, чтобы визуализировать, так как файл кажется поврежденным в бэкэнде (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 каждого отдельного файла