FileNotFoundException в Silex при возврате ресурса изображения php

у меня есть маршрут API на моем сервере silex, который отображает ресурс изображения php и возвращает его через BinaryFileResponse. Я пробовал несколько типов ответов, и только BinaryFileResponse работал правильно. Тем не менее, каждый раз, когда я использую этот маршрут для получения изображения, я получаю следующее сообщение об ошибке в журналах:

silex: CRITICAL Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException: The file "1" does not exist (uncaught exception) at /opt/pyriand3r/vendor/symfony/http-foundation/File/File.php line 41 | host='sv35' exception='error' 

Я считаю, что это так, потому что я не возвращаю фактический файл, а только файловый ресурс, не сохраненный в файловой системе. Есть ли способ стереть эту ошибку без временного сохранения изображения в файловой системе? Может быть, другой тип ответа или что-то в этом роде?


person pyriand3r    schedule 18.12.2015    source источник


Ответы (1)


BinaryFileResponse действительно предназначен для элементов в файловой системе. Для вашего сценария подойдет StreamedResponse.

В случае, если StreamedResponse был среди классов ответов, которые вы безуспешно пытались заставить работать, вы должны опубликовать ошибочный код.

person BlueM    schedule 18.12.2015
comment
Я не знаю, что было не так в прошлый раз, потому что я уверен, что протестировал StreamedResponse безуспешно. Теперь это работает. Спасибо! - person pyriand3r; 18.12.2015