[Android] Retrofit2, OkHttpClient Method 정리
(이 Post는 Retrofit 2.2.0 기준으로 작성되었음) Retrofit을 적용하면서, 지원되는 기능들을 한번 정리를 해 둬야, 어떤 것을 쓸수 있는지 확실히 할 수 있을 것 같아서, 아래와 같이 정리한다. 1. Retrofit.Builder baseUrl(String baseUrl) 을 제외하면, 대부분 DI의 형태를 띄고 있다. 각각 Injection 되는 Class들의 용도는 각 항목에서 설명한다. 분석을 하고 보니, Retrofit Class는 이 Builder를 통해 Injection 된 Instance들을 들고있는 Holder 역할을 하는 것으로 보인다. baseUrl(String baseUrl) : Base가 되는 URL을 설정한다. 많은 서비스들에서 사용하는 API들은 앞부분의 Host 정도는 동일하고, 뒷부분의 API Name들로 구분을 하는 경우가 많다. 그때 고정이 되는 앞부분을 여기서는 BaseURL이라고 이야기하고 있다. 만약 BaseUrl을 "https://apis.github.com"이라고 설정한 다음 실제 Retrofit Service Interface에서 @GET("/user/repos")라고 선언해서 사용한다면 실제 요청은 "https://apis.github.com/user/repos"로 나가게 된다. 중요한 부분이 있어서 Retrofit의 Document에서 일부를 가져온다. 올바른 사용: Base URL: http://example.com/api/ Endpoint: foo/bar/ Result: http://example.com/api/foo/bar/ 잘못된 사용: Base URL: http://example.com/api Endpoint: foo/bar/ Result: http://example.com/foo/bar/ 만약 Base URL을 설정하지 않으면 IllegalStateException이 발생하게 된다. baseUrl(HttpU...