如何在Node.js中下载和编写jar文件?

时间:2018-06-08 21:20:07

标签: node.js jar request

所以我正在开发一个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,在我的实际代码中,我使用等待请求)。甚至可以在没有管道的情况下下载和写入吗?

1 个答案:

答案 0 :(得分:1)

事实证明这是snekfetch库的一个问题。切换到snekfetch v3修复它。

您可以查看问题的状态here