Хапи: как отправить изображение

У меня есть двоичный файл изображения в формате jpeg. Как я могу использовать Hapi для отображения изображения? Мой код показывает мусор только конечному пользователю API.

hapiServer.route({
  method: 'GET',
  path:'/users/{userId}/photo',
  handler: async function (request, reply) {
    const userId = parseInt(encodeURIComponent(request.params.userId));


    const photo = getImageBinary(userId);    
    reply(photo);
  }
});

person omidh    schedule 09.11.2016    source источник
comment
как называется этот API. Что возвращает getImageBinary?   -  person Jaromanda X    schedule 09.11.2016
comment
@JaromandaX Пользователь заходит на www.host.com/users/123/photo, и браузер показывает фотографию, getImageBinary возвращает двоичные данные изображения.   -  person omidh    schedule 09.11.2016
comment
Заголовок типа контента должен помочь   -  person Jaromanda X    schedule 09.11.2016


Ответы (1)


Предполагая, что двоичные данные вашего изображения равны png:

hapiServer.route({
  method: 'GET',
  path:'/users/{userId}/photo',
  handler: async function (request, reply) {
    const userId = parseInt(encodeURIComponent(request.params.userId));

    const photo = getImageBinary(userId);    
    reply(photo).header('Content-Disposition','inline').header('Content-type','image/png');
  }
});
person aring    schedule 09.11.2016