#file #pdf #apache-nifi #mime-types #doc
#файл #PDF #apache-nifi #mime-типы #doc
Вопрос:
У меня есть поток Nifi, в котором файл документа, например / pdf, doc и т. Д., Отправляется из REST API в процессор Nifi ListenHTTP. Процессор настроен на прием всех заголовков. Вот моя проблема
Шаги для воспроизведения:
- hello-world.pdf отправлен на процессор ListenHttp
- проверьте очередь и загрузите файл
ожидаемый результат: загруженный файл должен называться «hello-world.pdf»
фактический результат: загруженный файл называется «hello-world»
Однако, если я использую процессор HandleHttpRequest, за которым следует процессор HandleHttpResponse, я получаю ожидаемый результат.
Кто-нибудь знает, почему процессор ListenHttp не дает мне ожидаемого результата?
Комментарии:
1. Ваше сообщение не соответствует заголовку вопроса — расширение файла
application/pdf
2. @Sdairs Исправлено!
Ответ №1:
Решение состоит в том, чтобы добавить процессор ‘update attribute’ с атрибутом
mime.type
значение ключа ${Content-Type}
Это связано с тем, что процессор HttpListener по умолчанию не записывает этот заголовок.
Комментарии:
1. Так почему бы просто не использовать
Content-Type
?2. Файл потока уже имеет Content-Type, он не работает. Согласно документации, другие HttpProcessors автоматически добавляют mime.type, HttpListener этого не делает. Без атрибута mime.type расширение файла в полезной нагрузке flowfile не будет сохранено.