Я хочу передать ZIP-архив через коа / узел. js - PullRequest
0 голосов
/ 29 января 2020

Я хочу передать файл ZIP, но не могу заставить stream работать в Koa. Вот что я до сих пор (упрощенно)

import Stream from 'stream'
import archiver from 'archiver'

...

 router.get('/zip', async ctx => {

   ctx.set('Content-Type', 'application/zip')

   const content = 'Hey there!'
    
   const archive = archiver('zip', {
      zlib: { level: 9 }, 
   })

   const stream = new Stream.Duplex()
   ctx.body = stream


   archive.pipe(stream)
   archive.append(content, { name: `hello.txt` })
   archive.finalize()
})

Однако я получаю эту ошибку:

Error [ERR_METHOD_NOT_IMPLEMENTED]: The _read() method is not implemented

Что мне не хватает?

1 Ответ

0 голосов
/ 29 января 2020

Видимо

const stream = new Stream.PassThrough()

добивается цели:)

...