Так что я работаю над пусковой установкой 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 для запроса).Можно ли вообще скачивать и писать без труб?