【发布时间】:2021-04-28 03:51:30
【问题描述】:
我需要像https://miro.medium.com/max/1200/0*UEtwA2ask7vQYW06.png这样从指向它们的链接数组中下载图像
还有我写的代码。我用https://www.npmjs.com/package/image-downloader
const download = require('image-downloader');
const links = require('./links.json');
var options = {
url: "",
dest: links.dest,
};
links.url.forEach((link) => {
options.url = link
download
.image(options)
.then((result) => {
console.log("Image downloaded", result);
})
.catch((error) => console.log("downloaded error", error));
});
还有 .json 文件
{
"url":[
"https://miro.medium.com/max/1200/0*UEtwA2ask7vQYW06.png",
"https://api.time.com/wp-content/uploads/2019/08/better-smartphone-photos.jpg",
"https://iso.500px.com/wp-content/uploads/2016/03/stock-photo-142984111.jpg",
]
"dest":"D:/"
}
但是因为它是异步工作的,所以所有下载的图像都是无序的,不像链接列表中那样(不能按日期排序)。如何修改此代码以使其按顺序下载图像?
【问题讨论】:
-
为什么不使用响应头来设置你写入磁盘的文件的日期?
-
你为什么关心下载完成的顺序?如果您希望能够将完成的下载与原始链接相关联,可以在回调范围内的
link中找到。
标签: javascript node.js async.js