카테고리 없음

Retrofit은 Android 개발에서 가장 많이 쓰이는 HTTP 통신 라이브러리

idea9329 2025. 3. 25. 14:57
반응형

Retrofit은 Android 개발에서 가장 많이 쓰이는 HTTP 통신 라이브러리 중 하나야.
특히 REST API와 통신할 때 아주 깔끔하고 선언적으로 쓸 수 있게 도와줘.


✅ Retrofit 한줄 설명

Retrofit은 REST API와의 통신을 간단하게 해주는 Android용 HTTP 클라이언트 라이브러리야.


🔧 어떤 기능을 해줘?

기능설명

✅ API 요청 쉽게 정의 인터페이스만 만들면 자동으로 요청 생성됨
✅ JSON 자동 파싱 GSON, Moshi 등과 연동해서 자동으로 객체 매핑
✅ 비동기 요청 지원 Call.enqueue()로 네트워크 스레드 자동 처리
✅ 에러 핸들링 편리 응답 코드/본문 기반 처리 가능
✅ 다양한 변환기 지원 XML, ProtoBuf 등도 연동 가능
✅ 인증/Interceptor 확장 쉬움 OAuth, Header 추가도 간단

🔍 사용 예시 (기본 구조)

✅ 1. API 인터페이스 정의

public interface ApiService {
    @GET("users/{id}")
    Call<User> getUser(@Path("id") int userId);
}

✅ 2. Retrofit 객체 생성

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

ApiService api = retrofit.create(ApiService.class);

✅ 3. 호출하기

api.getUser(1).enqueue(new Callback<User>() {
    @Override
    public void onResponse(Call<User> call, Response<User> response) {
        if (response.isSuccessful()) {
            User user = response.body();
            // 성공 처리
        }
    }

    @Override
    public void onFailure(Call<User> call, Throwable t) {
        // 실패 처리
    }
});

📦 Retrofit과 함께 자주 쓰는 것들

라이브러리역할

GSON / Moshi JSON → 객체 자동 변환
OkHttp Retrofit의 내부 HTTP 클라이언트
Coroutine (Kotlin) 비동기 처리 더 깔끔하게
RxJava 반응형 처리에 유용

🧠 정리 요약

항목설명

라이브러리명 Retrofit
만든 곳 Square (OkHttp 만든 회사)
주 용도 REST API 통신 (GET, POST 등)
특징 인터페이스 기반, JSON 자동 매핑, 확장성 높음
안드로이드 표준? ✅ 거의 사실상 표준 라이브러리처럼 사용됨



반응형