Я использую Retrofit 2.0.0-beta2, и мне нужно загрузить некоторые файлы с моего PHP-сервера. Мой первый подход, который работал, заключался в том, чтобы напрямую использовать метод GET с его относительного пути к серверу, и я получал правильные байты.Неправильное тело ответа при попытке загрузить фотографию с помощью Retrofit2
Теперь я пробовал что-то более безопасное, которое доставляет файл мне на основании некоторых проверок. Он автоматически извлекает путь к файлу из БД и проверяет правильность сеанса пользователя. Это работает в тестах браузера, как на Chrome PC, так и на Chrome с Android, правильно загружать несколько фотографий.
Я подаю файл, используя X-Sendfile заголовок так:
header("X-Sendfile: $file_name");
header("Content-type: image/jpeg");
header('Content-Disposition: attachment; filename="' . basename($file_name) . '"');
Андроида стороне вызова выглядит следующим образом:
@Streaming
@GET("/card/download")
Call<ResponseBody> getCard(@Query("filename") String filename);
Все, что я получаю, когда открытие файлы - это эхо-ответ от сервера. Есть ли способ получить «правильные» файлы?