Поддержка @Streaming в Retrofit 2

Потому что нет body().in() (больше), этот код не работает в модификации 2:

interface Service {        
    @Get("...") 
    @Streaming
    Response getData();
}

try (InputStream in = service.getData().getBody().in()) {
    ...
}

Единственный способ, которым я нашел это. Это правильно?

try (InputStream in = service.getData().raw().body().byteStream()) {
    ...
}

1 ответ

Немного поздно, но у меня была та же проблема сегодня, так что вот что я нашел и использовал:

interface Service {
    @GET("...")
    @Streaming
    Call<ResponseBody> getData();
}


Call<ResponseBody> call = service.getData();
try {
    InputStream in = call.execute().body().byteStream();
    (...)
} catch (IOException e) {...}
Другие вопросы по тегам