Как скачать и написать файл jar в Node.js? - PullRequest
0 голосов
/ 09 июня 2018

Так что я работаю над пусковой установкой Minecraft (почему бы и нет, хороший опыт), и я застрял, когда дело доходит до загрузки библиотек.

У меня есть действительный URL-адрес jar здесь.Когда вы загружаете его в браузере, он работает нормально.Но, когда вы загружаете его с Node.js, 7-zip выдает эту ошибку при попытке открыть его:

An attempt was made to move the file pointer before the beginning of the file.

Я использую модуль с именем snekfetch , но я 'Мы также попробовали это с request .Оба предмета дали одну и ту же проблему.Вот мой текущий тестовый код:

request.get('https://libraries.minecraft.net/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar').then(r => {
  fs.writeFileSync('./mything.jar', r.body);
});

Я что-то не так делаю, чтобы загрузить файл jar?

Хорошо, теперь, когда я увидел этот ответ ,Мне нужно изменить вопрос.Я заставил его работать с использованием каналов, но мне нужен встроенный код, потому что это загружаемый цикл for (отсюда мое использование writeFileSync, а в моем реальном коде я использую await для запроса).Можно ли вообще скачивать и писать без труб?

1 Ответ

0 голосов
/ 09 июня 2018

Оказывается, это проблема с библиотекой snekfetch.Переход на snekfetch v3 исправил это.

Вы можете проверить статус проблемы здесь .

...