Skip to content

Instantly share code, notes, and snippets.

@iambriansreed
Created October 30, 2022 21:11
Show Gist options
  • Select an option

  • Save iambriansreed/a1b7283c86d4f1c5173b2294a0a3504d to your computer and use it in GitHub Desktop.

Select an option

Save iambriansreed/a1b7283c86d4f1c5173b2294a0a3504d to your computer and use it in GitHub Desktop.
Files Downloader - Node,TypeScript
import fs from 'fs';
import https from 'https';
async function filesDownloader(url: (iterator: number) => string, response: (iterator: number, data: string) => void, iteratorMax: number, iteratorStart = 0) {
async function getUrlData(url: string): Promise<string> {
return new Promise((resolve, reject) => {
https.get(url, (resp) => {
let data = '';
resp.on('data', (chunk) => { data += chunk; });
resp.on('end', () => { resolve(data); });
}).on("error", (err) => { reject(err.message); });
});
}
let iterator = iteratorStart;
while (iterator <= iteratorMax) {
await getUrlData(url(iterator)).then(data => response(iterator, data));
iterator++;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment