Sobes.tech
Junior — Middle

Как да извършите мрежова заявка чрез Retrofit без използване на поддръжка на корутини?

sobes.tech AI

Отговор от AI

Чтобы выполнить сетевой запрос через Retrofit без корутин, можно использовать классический подход с Callback. Например:

interface ApiService {
    @GET("users/{id}")
    fun getUser(@Path("id") id: Int): Call<User>
}

// Использование:
val call = apiService.getUser(1)
call.enqueue(object : Callback<User> {
    override fun onResponse(call: Call<User>, response: Response<User>) {
        if (response.isSuccessful) {
            val user = response.body()
            // обработка полученных данных
        }
    }

    override fun onFailure(call: Call<User>, t: Throwable) {
        // обработка ошибки
    }
})

Такой подход позволяет выполнять запросы асинхронно без корутин, используя стандартные методы Retrofit.