Я использую One Drive API , чтобы получить файл с помощью приложения узла, используя библиотеку ax ios.
Я просто пытаюсь сохранить файл на локальном компьютере (узел работает локально).
Я использую API One Drive, чтобы получить ссылку для загрузки документа, которая не требует аутентификации (с https://graph.microsoft.com/v1.0/me/drives/ [location] / items / [id] ).
Затем я звоню со ссылкой для скачивания документа:
response = await axios.get(url);
Я получаю ответ JSON, который включает, среди прочего, контент- тип, длина содержимого, расположение содержимого и элемент данных, который является содержимым файла.
Когда я отображаю на консоли ответ JSON, часть данных выглядит следующим образом:
data: 'PK\u0003\u0004\u0014\u0000\u0006\u0000\b\u0000\u0000\u0000!\u...'
Если документ просто текстовый, я могу сохранить это легко, используя:
fs.writeFileSync([path], response.data);
Но если файл является двоичным, как файл docx
, я не могу понять, как его правильно написать. Кажется, что каждый раз, когда я пытаюсь это сделать, неправильная кодировка. Я пробовал разные кодировки.
Как правильно сохранить файл в зависимости от типа полученного файла.