как получить файл через поток - PullRequest
0 голосов
/ 12 января 2019

У меня есть файл / изображение, хранящиеся в хранилище Azure, но мне нужно отправить файл через поток (не для загрузки файла в локальном хранилище)

import storage from 'azure-storage';

const Storage = storage.createBlobService();

async handler(request,h){
const photo = new Promise((resolve, reject) => {
    const res = Storage.createReadStream('conatinername',
      'file.jpg');

    res.on('data', () => { });

    res.on('readable', (data) => resolve(data));
  });

  return await photo;
}

1 Ответ

0 голосов
/ 14 января 2019

Предположим, вы хотите отправить изображение в ответ, попробуйте обработчик ниже.

handler: async function(request,h) {
    const photo = new Promise((resolve, reject) => {
        const res = Storage.createReadStream(containerName, blobName);
        res.on('data', (data) => resolve(data));
        res.on('error',(err) => reject(err));
    });
    try {
        var content = await photo;
        return h.response(content).type('image/jpg');
    } catch(err){
        return h.response("ERROR Downloading");
    }
}
...