逻辑分支
我有一个包含多个图像的文件夹,目录结构如下所示:
./images/
./images/1.png
./images/2.png
./images/3.png
./images/4.png
./images/{n}.png
这些图像已通过request和fs模块通过名为的脚本下载和保存update.js
。
每个文件均以文件夹中项目的长度命名(即IE:长度+ 1)。
该update.js
脚本将下载(并保存)每个图像,而不管其是否存在。
我可以通过删除images
文件夹来解决此问题,但这浪费资源。
防止这种行为的最有效方法是什么?
注意:因为名称是索引,所以我不能使用简单的文件名检查。
谢谢。
约翰·汉弗莱斯-w00te
您可以为每个文件发出HTTP头请求并获取其头。然后,您可以查看目标文件的大小,并在大小完全匹配时避免重新下载它。
尽管不同的文件可能具有相同的大小,但这并不理想。
一些服务器为您提供内容md5,这可能是最好的。除非您的用例非常大,否则md5不太可能在您拥有的任何两个文件之间匹配。
尽管可以通过仅修复脚本来更好地为您服务,因为它可以存储适当的元数据,但是这一切都是很麻烦的:)。您可以将真实文件名和修改后的时间戳记作为另一个文件存储在同级目录中,并确定它不会影响任何内容。然后,您可以在下载之前检查它们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
编辑于
我来说两句