카테고리 없음
[안드로이드]서버에 데이터 요청, 응답
아놀드금자
2022. 8. 18. 04:21
728x90
네트워크 연결 방식
클라이언트-서버 : 플라이언트와 서버가 1:1로 연결
(2tier: http, ftp, pop3)
(3tier: 클라이언트-응용서버-데이터서버) -> 응용 서버와 데이터 서버 구성 시 데이터베이스를 분리할 수 있어 중간에 비즈니스 로직을 처리하는 응용서버가 더 다양한 역할을 할 수 있다.
Peer to Peer: 서버를 두지 않고 단말끼리 서버와 클라이언트 역할을 한다.
소켓 사용하기
소켓 연결은 IP 주소로 목적지 호스트를 찾아내고 포트로 통신 접속접을 찾아낸다. TCP❤, UDP
HTTP 프로토콜은 소켓으로 웹서버에 연결한 후 요청을 전송하고 응답을 받은 후 연결을 끊는다.
-> 비연결성(Stateless)
안드로이드는 소켓 연결 등을 시도하거나 응답을 받아 처리할 때 스레드를 사용해야 한다.
웹으로 요청하기
비연결성(Stateless)인 HTTP 프로토콜은 페이지 정보를 요청할 때마다 소켓을 새로 연결하고 응답을 받은 다음에는 소켓의 연결을 끊는 것이 일반적이다. 그리고 그 소켓연결 위에서 HTTP 프로토콜에 맞는 요청을 보내고 응답을 받아 처리한다.
volley 사용하기
웹 요청과 응답을 단순화하기 위해 만들어진 라이브러리
request 객제를 만들고 이 request객체를 큐에 넣어줌 -> request 큐가 알아서 웹서버에 요청하고 응답까지 받아줌
장점: 스레드와 핸들러를 사용할 필요 없음
728x90