[회고] 신입 iOS 개발자가 되기까지 feat. 카카오 자세히보기

💻 CS/네트워크

[Network] HTTP 메서드 활용

inu 2021. 6. 10. 21:20
반응형

  • 데이터 전달 방식은 크게 2가지
  • 쿼리 파라미터를 통한 데이터 전송 : GET / 주로 정렬 필터(검색어)
  • 메시지 바디를 통한 데이터 전송 : POST, PUT, PATCH / 회원가입, 상품 주문, 리소스 등록, 리소스 변경 등

클라이언트에서 서버로 데이터를 전송하는 4가지 상황

정적 데이터 조회

  • 이미지 혹은 정적 텍스트문서.
  • 쿼리파라미터를 사용하지 않고 경로만으로 데이터를 조회한다. (GET)

동적 데이터 조회

  • 주로 정렬 필터(검색어)에 활용.
  • 쿼리 파라미터를 전송하면 서버에서 이를 기반으로 동적으로 생성한 결과를 조회한다. (GET + 쿼리 파라미터)

HTML Form을 통한 데이터 전송

  • HTML Form을 submit하면 POST가 전송된다.
  • form의 내용을 메시지 바디를 통해 전송 (key=value 형식)
  • 전송 데이터는 url encoding 처리된다.
  • GET 메서드로도 전송가능하지만 저장, 수정 등이 목적일 경우 권장되지 않는다.
  • 파일과 같은 바이너리 데이터 전송을 원할경우 enctype="multipart/form-data"를 사용한다. (default : enctype="application/x-www-form-urlencoded")
  • cf. GET과 POST만 지원

HTTP API를 통한 데이터 전송

  • 서버 to 서버로 백엔드 통신할 때 사용된다.
  • 앱 클라이언트 혹은 웹 클라이언트에서 통신할 때도 많이 사용된다.
  • POST,PUT,PATCH : 메시지 바디를 통해 데이터 전송
  • GET : 조회 혹은 쿼리 파라미터로 데이터 전송
  • Content-Type : application/json을 주로 활용한다. (사실상 표준)
반응형

'💻 CS > 네트워크' 카테고리의 다른 글

[Network] HTTP 상태코드  (0) 2021.06.26
[Network] HTTP API 설계 예시  (1) 2021.06.12
[Network] HTTP 메서드 기초  (0) 2021.05.16
[Network] HTTP 프로토콜  (0) 2021.04.09
[Network] NAT와 포트포워딩  (0) 2021.04.08