繁体   English   中英

从链接下载文件并检查下载是否完成nodejs

[英]Download file from link and check if download is complete nodejs

我尝试从链接下载文件

这是我的代码

  const url ="https://lalalai.s3-us-west-2.amazonaws.com/media/split/a703a60c-54f3-48f4-91b5-43a60c-54f3-48f4-91b5-4b3bc71dfd2f/accompaniment";
  const file = fs.createWriteStream("./uploads/exp.mp3");
  https.get(url, async function (response) {
    await response.pipe(file);
    console.log("done");
  });

问题是,服务器返回“完成”但下载的文件仍未完成。 有人能帮我吗? 感谢:D

我认为您可以收听事件并应用回调来了解该特定事件将发生的情况。 下面是示例代码。

const url ="https://lalalai.s3-us-west-2.amazonaws.com/media/split/a703a60c-54f3-48f4-91b5-43a60c-54f3-48f4-91b5-4b3bc71dfd2f/accompaniment";
  const file = fs.createWriteStream("./uploads/exp.mp3");
  https.get(url, async function (response) {
    response.pipe(file);
    console.log("downloading started");

    response.on("error", (err) => {
      console.log("some error occurred while downloading");
      throw err;
    });
  
    response.on("end", () => {
      console.log("it worked, download completed");
    });
    
 });

有时正在下载的文件来自 response.body 而不是 response 所以如果上面的方法不起作用,也要检查一下。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM