Ответ
Для работы с Retrofit нужно создать:
- Интерфейс API с аннотациями для эндпоинтов:
interface ApiService {
@GET("posts")
suspend fun getPosts(): List<Post>
}
- Retrofit экземпляр:
val retrofit = Retrofit.Builder()
.baseUrl("https://jsonplaceholder.typicode.com/")
.addConverterFactory(GsonConverterFactory.create())
.build()
-
Модели данных (например, класс
Postдля JSON ответа) -
Вызов API через созданный сервис:
val api = retrofit.create(ApiService::class.java)
val posts = api.getPosts()
Ключевые моменты:
- Используйте
suspendдля корутин илиCall<T>для callback-подхода - Добавьте интерсепторы при необходимости (логирование, авторизация)
- Обрабатывайте ошибки через
try-catchилиResponse<T>