Модифицировать параметр запроса без "=" - PullRequest
1 голос
/ 01 мая 2020

Возможно, вопрос уже задан, но я не могу его найти
Как реализовать этот запрос в Retrofit
https://i.picsum.photos/id/733/200/300.jpg?grayscale он будет выглядеть так:

   Call<Post> getBlurGrayscale(@Query("grayscale") ??);

Как сделать запрос просто blurscale без "=" и как добавить ".jpg" и конец, если API не добавит автоматически .jpg?
PS Я пытаюсь использовать Retrofit для доступа к Lorem Picsum

1 Ответ

1 голос
/ 02 мая 2020

Вы можете использовать аннотацию @QueryName . Например:

Call<Post> getBlur(@QueryName String query);

И тогда вы бы позвонили foo.getBlur("grayscale"), чтобы получить URL, заканчивающийся на ?grayscale.

Если вы работали в Kotlin, вы могли бы добавить метод для вашего интерфейса, чтобы избежать необходимости каждый раз передавать "grayscale":

fun getBlur(@QueryName query: String): Call<Post>

fun getBlurGrayscale(): Call<Post> = getBlur("grayscale")
...