Я храню данные в Azure и помещаю Content-Type в поле заголовков при загрузке чанка, например, так:
const headers: any = {
'Content-Range': contentRange,
'Content-Type': "image/svg+xml",
};
const responseData: any = await putChunk(url, chunks[currentChunkIndex].blob, headers);
Ниже описан способ создания больших двоичных объектов и помещения их в массив фрагментов:
var blob = new Blob([file.slice(start, end)], { type: 'image/svg+xml' });
const chunk = new FileChunk(blob, file.size, start, end, file.name);
chunks.push(chunk);
Ниже приведена функция putChunk (), которая просто отправляет запрос PUT:
async function putChunk(url: string, data: any, headers: any): Promise<any> {
const options: any = {
method: 'PUT',
headers: headers,
body:
return await fetch(url, options);
}
Независимо от того, какой тип содержимого установлен для BLOB-объектов и блоков, он всегда сбрасывается в application / octet-stream. Чего мне не хватает?