Sobes.tech
Junior — Middle
96

REST API-мен өзара әрекеттесу үшін Retrofit-тің негізгі компоненттері мен принциптерін түсіндіріңіз.

Сұралған компаниялар
IBS

AI-дан жауап

sobes.tech AI

Retrofit — бұл Android үшін кітапхана, ол REST API-мен жұмыс істеуді жеңілдетеді. Ол HTTP сұрауларын интерфейстер түрінде сипаттауға мүмкіндік береді, содан кейін жауаптарды автоматты түрде Java/Kotlin объектілеріне айналдырады.

Негізгі компоненттері:

  • API интерфейсі — сұрау түрін және жолын көрсететін аннотациялармен (@GET, @POST және т.б.) әдістерді сипаттайды.
  • Converter — JSON немесе басқа жауап форматтарын объектілерге айналдырады (мысалы, GsonConverter).
  • Call — сұрауды көрсететін объект, оны синхронды немесе асинхронды түрде орындауға болады.

Жұмыс принципі:

  1. Әдістері мен аннотациялары бар интерфейс құрастырыңыз.
  2. Негізгі URL және конвертермен Retrofit мысалын жасаңыз.
  3. Retrofit арқылы интерфейстің жүзеге асуын алыңыз.
  4. Әдістерді шақырыңыз, Call алыңыз және сұрауды орындаңыз.

Мысал:

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

val retrofit = Retrofit.Builder()
    .baseUrl("https://api.example.com/")
    .addConverterFactory(GsonConverterFactory.create())
    .build()

val service = retrofit.create(ApiService::class.java)
val call = service.getUser("123")
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) {
        // қате өңдеу
    }
})