response-native-fs, когда я использую downloadFile для получения изображения, но bytesWritten равно 0 - PullRequest
0 голосов
/ 12 июня 2019

Я пытаюсь получить изображение с помощью response-native-fs с сервера s3. я успешно получаю изображение на сервере от s3.

но, в клиенте, получить байт 0

server.js

router.get('/loadImage', (req, res) => {
  const {fileId, connectid, imageId} = req.query;
  const key = `LiveRoom/${connectid}/${fileId}/${imageId}`
  const param = {Bucket: 'paperly', Key: key}
  const stream = s3.getObject(param).createReadStream();

  //const file = fs.createWriteStream('test.png');

  stream.on('error', err => {
    console.log(err)
  })

  //stream.pipe(file);

  //console.log(stream._readableState.pipes);
  stream.pipe(res);

  // i already checked getting image by s3. success fully create image
  // s3.getObject(param, (err, data) => {
  //     fs.writeFile('test.png', data.Body, 'binary', err => {
  //       console.log(err);
  //     })
  // })
})

loadImage.js

RNFS.downloadFile({
    fromUrl: configuration.serverAddress+'/loadImage?fileId='+fileId+'&connectid='+connectid+'&imageId='+imageId,
    toFile: cacheFilePath,
    background: true,                  
    progress: res => {
        console.log('download image progress', res)
    }
}).promise.then(async res => {
    //it is console
    //{
    //   bytesWritten: 0
    //   jobId: 1
    //   statusCode: 200
    //}

    console.log('====================================');
    console.log(res);                     
    console.log('====================================');
})

Дайте мне знать причину и решение, пожалуйста.

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