Как использовать HTTP-запрос в качестве начала потокового конвейера? - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь использовать stream.pipeline и не могу передать HTTP-запрос в качестве исходного для чтения:

import {pipeline} from "stream";
import https from "https";
import fs from "fs";
import zlib from "zlib"

pipeline(
   https.get("<url>"), // what would I put there?
   zlib.createGunzip(),
   fs.createWriteStream("<path>"),
   (err) => {console.log("finished", err);}
)

Для запроса запроса https я использую это, что дает мне читабельный (IncomingMessage), но конвейер никогда не заканчивается. Очевидно, я делаю что-то в корне неправильно.

new Promise(resolve => https.get("<url>", resolve))

Я также пытался использовать модуль request, но получаю ошибку Typescript при использовании:

pipeline(
  request({uri: "<url>"}), // <-- No overload matches this call.
  zlib.createGunzip(),
  ...

Никакая перегрузка не соответствует этому вызову.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...