所以我正在开发一个Minecraft发射器(因为为什么没有,很好的经验),而且在下载库时我很困惑。
我有一个有效的jar网址here。当您在浏览器中下载它时,它可以正常工作。但是,当您使用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文件我做错了吗?
好的,现在我已经看过this answer,我需要修改这个问题。我已经使用管道工作,但我需要内联代码,因为这是一个正在下载的for循环(因此我使用writeFileSync,在我的实际代码中,我使用等待请求)。甚至可以在没有管道的情况下下载和写入吗?