node.js - 如何检测文件何时下载?
问题描述
如何在 NodeJS 中检测文件何时下载?我正在使用 fs.watch 方法,但是回调被调用了太多次
fs.watch(`./${IMAGES_FOLDER}/${filename}`, () => {
if (!isDownloaded) {
const output = fs.createWriteStream(`${DOWNLOAD_FOLDER}/${filename}.zip`)
const archive = archiver('zip')
archive.pipe(output)
archive.directory(`images/${filename}`, false)
archive.on('error', err => {throw err})
archive.finalize()
output.on('close', () => {
resp.download(downloadUrl)
})
archive.on('error', (err) => {
throw err
})
}
isDownloaded = true
})
解决方案
推荐阅读
- java - 如何使用 Java 在单独的行上打印整数位
- java - 为什么这个程序在 IntelliJ Debug 模式下会抛出 NoSuchElementException?
- javascript - 在 Remix 中部署合约并获取错误:回调已被调用
- android-sdk-tools - 如何从 OSMDroid 类文件中诊断 dx 错误“invokedynamic requires --min-sdk-version >= 26”?
- java - 如何从 android Studio 解决这个 java 路径错误?
- regex - 捕捉旧的 url 正则表达式
- php - 我无法将数据库中的信息链接到我的 php 文档中
- html - 响应式网页设计 - 如何在不调整标签对齐方式的情况下放大整个页面
- java - 如何在java 8中获取其他json元素的值
- javascript - 消除对象数组中的重复项