210202

Retrofit을 사용한 서버통신(jsonplaceholder 사이트 사용) 본문

Android

Retrofit을 사용한 서버통신(jsonplaceholder 사이트 사용)

dev210202 2020. 2. 22. 15:03

아래 사이트를 참고하여 기능을 구현했다.

https://brunch.co.kr/@henen/25

 

빠르게 배우는 안드로이드-24 retrofit-http

retrofit을 이용한 http통신( retrofit-1) | 앱을 만들다보면 서버에 있는 정보를 이용해야 합니다. 이번 시간에는 square사의 retrofit이라는 라이브러리를 이용해서 http통신을해보겠습니다. retrofit에 대한 자세한 내용은 http://square.github.io/retrofit/ 에서 살펴보실수 있습니다. 우선 http 통신에 대한 간단한 설명하고 시작하겠습니다. http통신은 웹 즉

brunch.co.kr

개발환경이나 다른 부분들은 참고 사이트에 잘 나와있어서 설명하지 않겠다.

중요한 부분은 Interface를 만들어서 어떤식으로 데이터를 받아올지 결정하는 부분인데 문법은 다음과 같다.

 

@GET("api주소")

Call<객체>함수이름(@Query("변수이름"), 안드로이드에서 보낼 변수)

 

예를 들어

@GET("comments")
Call<ResponseBody>getComment(@Query("postId")int postId); 로 설정했다면

 

http://jsonplaceholder.typicode.com/comments주소에 들어가서 postId로 되어있는 쿼리중에 int postId로 설정한 값에 맞는 데이터(ResponseBody에 해당하는 데이터)를 가져오는 것이다.

 

 

그 다음 baseUrl을 설정하는 부분이 있는데 이는 

http://jsonplaceholder.typicode.com/photos

http://jsonplaceholder.typicode.com/comments

http://jsonplaceholder.typicode.com/posts

위와 같이 3가지의 사이트를 사용할때 바뀌지 않는 URL부분인 http://jsonplaceholder.typicode.com/을 말한다.

 

서버에 관한 지식이 거의 없어서 아주 기초적인 부분만 참고하여 구현했는데 실제로 몇번 사용하다보면 익숙해질 것 같다.

 

Comments