Wrong Response Body при попытке загрузить фото с помощью Retrofit2

Я использую Retrofit 2.0.0-бета2, и мне нужно загрузить некоторые файлы с моего сервера PHP. Мой первый подход, который работал, состоял в том, чтобы напрямую использовать метод GET с его относительного пути к серверу, и я получал правильные байты.

Теперь я попробовал что-то более безопасное, что доставляет мне файл на основе некоторых проверок. Он автоматически выбирает путь к файлу из БД и проверяет правильность сеанса пользователя. Это работает в тестах браузера, и Chrome PC, и Chrome от Android корректно загружают некоторые фотографии.

Я передаю файл, используя заголовок X-Sendfile, примерно так:

header("X-Sendfile: $file_name");
header("Content-type: image/jpeg");
header('Content-Disposition: attachment; filename="' . basename($file_name) . '"');

Вызов на стороне Android выглядит следующим образом:

@Streaming
@GET("/card/download")
Call<ResponseBody> getCard(@Query("filename") String filename);

Все, что я получаю при открытии файлов, — это эхо-ответ от сервера. Есть ли способ получить «правильные» файлы?

0

Решение

Видимо, возникла какая-то проблема с установкой мода.

Я тоже обновил OkHttp к версии 2.7.0

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]