본문 바로가기

앱/Kotlin

API 통신

백엔드 서버에 앱에서 데이터 등록/ 조회등의 요청을 하는 행위 

앱 개발자는 화면그리기, 서버에서 받아온 데이터 뿌려주기, 사용자 입력값 서버로 전달 

 

 

2. RESTFul API

-하나의 주소에서 여러개의 메쏘드를 통해서 해당 메쏘드별로 기능을 분리해서 요청하는 API

-메쏘드의 종류는 크게 4가지 사용 

1. GET

2. POST

3. PUT/ PATCH

4. DELETE 

 

종류 설명 

1 GET : DB에 내용을 조회하는 용도 

2 POST : DB에 내용을 추가하는 용도 INSERT / 로그인 

3 PUT/ PATCH : 대부분 기존 데이터 수정의 용도

4 DELETE 기존 데이터를 삭제할 때 사용 

 

 

3. 작업 프로세스 EX. 로그인 기능 

-화면을 구현 =>ID,PW 입력받는 화면

로그인 버튼 터치 시 이벤트 처리 

 

-API 통신 => 사용자가 입력한 값을 서버로 전달. 조회 요청등 

- 서버의 응답에 대한 처리 => 로그인 실패 시에는 토스트로 안내 , 성공 시에는 메인 화면으로 넘어간다 

=> 서버에서 내려주는 데이터를 파싱 (분석 )  : JSON 객체를 데이터 클래스로 변환하는 작업 (파싱 ) 

=> 변환 결과를 가지고 응답 처리 

 

4. 통신에 필요한 구성 요소들 

 

1 서버의 주소 : http://~.com or IP 주소 / 

2 기능의 주소 : /auth 등 필요한 기능을 접근할 때 사용하는 키워드 

-> 조합해서 기능을 사용 (api 호출) -> ex http://192.168.0.26:5000/api/docs/auth

3 메쏘드 -> 기능의 주소 중에 어떤 기능을 활용할 지 결정하는 놈 

4 파라미터 -> 각각의 api를 호출할 때 서버에 같이 보내줘야 하는 데이터들 

-> intent 넘어갈 때 putExtra 하는 것과 유사함 ("태그"/ "값") 

-데이터를 담아줄 때 어디에 담아주느냐 ? 

header, query, formBody

-메쏘드의 종류에 따라 통상적으로 담는 위치가 결정된다 

1 query : 담아주는 데이터가 주소에 노출된다 -> GET/ DELETE 주로 사용 

2 formBody: 주소에는 노출되지 않는다 -> POST. PUT. PATCH 주로 사용 

3 header : 별개로 취급하고 싶은 데이터 ( 요청을 누가하는지 ? 토큰 ) -> 필요에 따라 메소드 종류에 관계 없이 사용 

 

 

5 응답 (response) 

 

-서버가 받은 요청에 대한 처리 결과 

-json 양식으로 가공해서 내려줌 -> 앱에서 받아서 파싱 ->응답처리 

 

' > Kotlin' 카테고리의 다른 글

companion object= java의 static  (0) 2019.11.14
OKHTTP-API 통신 활용 라이브러리  (0) 2019.11.14
DatePickerDialog-날짜 선택 기능  (0) 2019.11.07
야구 게임  (0) 2019.11.07
리스트뷰  (0) 2019.11.06