Как открыть файл на запись в JS (Angular) с последующем его сохранением в файловую систему?
Существует клиент на Angular, с помощью RPC-запроса мы получаем все события с устройства (с некого бекенда).
Задача стоит в следующем: В одном из сервисов добавляется кнопка для сохранения всех JSON-RPC событий (сообщений) с устройства, бэк отдает их json-сообщениями. При этом, их может быть до миллиона, поэтому сохранять весь список в браузер, а потом выкачивать их не имеет смысла. Поэтому следует открыть файл на запись, предварительно предоставив пользователю выбрать какой-либо файл из файловой системы (чтобы получить к ней доступ), и потом уже записать все события туда.
сама кнопка
<button pButton
label="{{'JOURNAL.ARCHIVE.filter.button.export'| translate}}"
(click)="exportEvents()"
></button>
здесь вся логика
exportEvents() {
/* открыть файл на запись */
/* rpc запрос */
/* запись в файл */
}
Причем, соответственно, эта операция может занять много времени, поэтому все должно проходить асинхронно.
Как лучше реализовать открытие/запись в файл без участия браузера?