Как открыть файл на запись в JS (Angular) с последующем его сохранением в файловую систему?

Существует клиент на Angular, с помощью RPC-запроса мы получаем все события с устройства (с некого бекенда).

Задача стоит в следующем: В одном из сервисов добавляется кнопка для сохранения всех JSON-RPC событий (сообщений) с устройства, бэк отдает их json-сообщениями. При этом, их может быть до миллиона, поэтому сохранять весь список в браузер, а потом выкачивать их не имеет смысла. Поэтому следует открыть файл на запись, предварительно предоставив пользователю выбрать какой-либо файл из файловой системы (чтобы получить к ней доступ), и потом уже записать все события туда.

сама кнопка

<button pButton
        label="{{'JOURNAL.ARCHIVE.filter.button.export'| translate}}"
        (click)="exportEvents()"
></button>

здесь вся логика

exportEvents() {

    /* открыть файл на запись */


    /* rpc запрос */


    /* запись в файл */
}

Причем, соответственно, эта операция может занять много времени, поэтому все должно проходить асинхронно.

Как лучше реализовать открытие/запись в файл без участия браузера?


Ответы (0 шт):