Я столкнулся с проблемой в Asp Net Core.
Я не могу вернуть файл как данные BLOB-объектов, но не как объект JSON с закодированным содержимым в base64.
Вот мой кодв C #:
[Route("DownloadExcel")]
[HttpPost]
public async Task<FileContentResult> DownloadExcel([FromBody] Queries.In.Pages.Users.ExportToExcel.InModel model)
{
//some logic to retrieve an array of bytes.
var filename = $"myFile_{DateTime.Now:yyyyMMdd_hh_mm}.xlsx";
return File(byteArray, "octet/stream", filename);
}
В Angular 6 сторона:
this.httpClient.post(url, model, {headers: headers, responseType: 'blob'} )
.subscribe(res => {
let blob = new Blob(["\ufeff", response], {type: 'octet/stream'});
saveAs(blob, '111.xlsx');
})
Какой результат я вижу на вкладке ответа моего браузера? и заголовки:
Что не так в моем проекте и как его изменить, чтобы получить большой двоичный объект, но не JSON?
Заранее спасибо!