目前用https://deno.land/std@0.100.0/io#readerfromstreamreader获取数据做了一个批量下载器.平时用的时候正常打印log都是status==200,没有问题(包括出错的时候.),网站本身也没有任何对于外链下载的限制.
流程大概是
import { readerFromStreamReader } from "https://deno.land/std@0.100.0/io/mod.ts";
for(i of addressArray){
//为了保险,我把能加await的全加了
const res = await fetch( 动态url );
const file = await Deno.open( 动态filename , { create: true, write: true });
const reader = await readerFromStreamReader(res.body!.getReader());
await Deno.copy(reader, file);
await file.close();
//下面继续走, 循环下载
}
但是在这途中, 会不定期的出问题,提示:
Uncaught (in promise) TypeError: error sending request for url (网址略去): connection closed before message completed
at deno:core/core.js:86:46
at unwrapOpResult (deno:core/core.js:106:13)
at async mainFetch (deno:extensions/fetch/26_fetch.js:229:14)
有时候下两三个就报错了,有时候下几十个或者几百个才报错,找遍了全网也没有任何资料,不知道有没有大佬可以给个思路?谢谢了