Я разрабатываю приложение ionic 3 с конечными точками отдыха. Существует multipart / formData - конечная точка для загрузки файлов: я хочу загрузить файл с устройства через конечную точку с помощью cordova-plugin
Я пытаюсь это:
return Observable.create((observer: Observer<BlobFileEntryCombination>) => {
const reader: FileReader = new FileReader();
reader.onloadend = (fileData: any) => {
let _idxPoint = fileResouce.type.lastIndexOf('/');
let _type = fileResouce.type.substr(0,_idxPoint);
let _idPoint2 = fileResouce.name.lastIndexOf('.') + 1;
let _FileExt = fileResouce.name.substr(_idPoint2,4);
const blobProperties: BlobPropertyBag = { type: _type+'/'+_FileExt };
console.log(fileData.target.result);
const resultBlob: Blob =
new Blob(
**[fileData.target.result]**, blobProperties);
observer.next(<BlobFileEntryCombination>{
blob: resultBlob,
fileEntry: fileEntry,
});
observer.complete();
}
reader.readAsArrayBuffer(fileResouce);
});
});
проблема в том, что имя файла не распознается в BLOB-объекте. Когда я смотрю в Chrome-Network, я вижу имя файла «blob».
Content-Disposition: form-data; name="uploadedFile"; filename="blob" Content-Type: image/cont ÿØÿà JFIFÿÛC
Кажется, что блоб, который я передаю конечной точке, имеет неправильный формат.
См.
new Blob(
**[fileData.target.result]**, blobProperties);
Как я могу дать блоб в правильном формате?