HTTP 웹 기본 지식 7

호스팅, 네임 서버, DNS 서버

DNS(Domain Name System)란 웹사이트의 IP 주소와 도메인 주소를 이어주는 환경/시스템 웹사이트의 데이터가 저장되어 있는 호스팅 서버는 ip가 할당 되어 있는 실제 주소 호스팅 서버(ip주소) 와 도메인 주소가 같다고 저장하고 도메인을 입력했을때 해당 ip주소로 연결 해주는 역할 서버 호스팅(Server hosting) - 서버 컴퓨터의 전체 또는 일정 공간을 이용할 수 있도록 임대해 주는 서비스 - 호스팅 서버를 이용하면 일정부분의 서버 컴퓨터가 생겨 ip를 할당받게 됨 네임서버 - 도메인을 어떤 ip를 가진 서버(호스팅된 서버와 연결하는 담당 - 특정 도메인이 어떤 ip와 연결되었다는 것을 기록/전파 DNS 서버 - 실시간으로 각 네임서버로부터 전파된 모든 도메인의 ip정보를 갱신 -..

HTTP 상태코드

상태 코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 • 1xx (Informational): 요청이 수신되어 처리중 • 2xx (Successful): 요청 정상 처리 • 3xx (Redirection): 요청을 완료하려면 추가 행동이 필요 • 4xx (Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없음 • 5xx (Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못함 클라이언트가 인식할 수 없는 상태코드를 서버가 반환하면? • 클라이언트는 상위 상태코드로 해석해서 처리 • 299 ??? -> 2xx (Successful) • 451 ??? -> 4xx (Client Error) • 599 ??? -> 5xx (Server ..

HTTP API 설계 예시

HTTP API 설계 예시 • HTTP API - 컬렉션(Collection) - POST 기반 등록 - 예) 회원 관리 API 제공 • HTTP API - 스토어(Store) - PUT 기반 등록 - 예) 정적 컨텐츠 관리, 원격 파일 관리 • HTML FORM 사용 - 웹 페이지 회원 관리 - GET, POST만 지원 [회원 관리 시스템] API 설계 - POST 기반 등록 • 회원 목록 /members -> GET • 회원 등록 /members -> POST • 회원 조회 /members/{id} -> GET • 회원 수정 /members/{id} -> PATCH, PUT, POST • 회원 삭제 /members/{id} -> DELETE POST - 신규 자원 등록 특징 • 클라이언트는 등록될 리..

HTTP Methd 활용

HTTP 메서드 활용 • 클라이언트에서 서버로 데이터 전송 • HTTP API 설계 예시 클라이언트에서 서버로 데이터 전송 데이터 전달 방식 1) 쿼리 파라미터를 통한 데이터 전송 - GET • 주로 정렬 필터(검색어) 2) 메시지 바디를 통한 데이터 전송 - POST, PUT, PATCH • 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 4가지 상황 1) 정적 데이터 조회 - 이미지, 정적 텍스트 문서 - 조회는 GET 사용 - 정적 데이터는 일반적으로 쿼리 파라미터 없이 리소스 경로로 단순하게 조회 가능 2) 동적 데이터 조회 - 주로 검색, 게시판 목록에서 정렬 필터(검색어) - 조회 조건을 줄여주는 필터, 조회 결과를 정렬하는 정렬 조건에 주로 사용 - 조회는 GET 사용 - GET은 쿼리 ..

HTTP Method

API 설계 요구사항 회원 정보 관리 API • 회원 목록 조회 • 회원 조회 • 회원 등록 • 회원 수정 • 회원 삭제 API URI 설계 URI(Uniform Resource Identifier) • 회원 목록 조회 /read-member-list • 회원 조회 /read-member-by-id • 회원 등록 /create-member • 회원 수정 /update-member • 회원 삭제 /delete-member 좋지 못한 설계이다 . 리소스 식별이 되어야 한다 ! URI(Uniform Resource Identifier) 리소스의 의미 - 회원을 등록하고 수정하고 조회하는게 리소스가 아니다! 회원을 등록해라 -> 회원이 리소스 리소스를 어떻게 식별하는게 좋을까? - 회원을 등록하고 수정하고 조회..

HTTP의 기본

HTTP HyperText Transfer Protocol HTTP 메시지에 모든 것을 전송 • HTML, TEXT • IMAGE, 음성, 영상, 파일 • JSON, XML (API) • 거의 모든 형태의 데이터 전송 가능 - 현재에는 HyperText뿐만 아니라 거의 모든 형태의 데이터를 주고 받을 수 있다. • 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 • 지금은 HTTP 시대! HTTP 특징 • 클라이언트 서버 구조 • 무상태 프로토콜(스테이스리스), 비연결성 • HTTP 메시지 • 단순함, 확장 가능 1) 클라이언트 서버 구조 • Request Response 구조 • 클라이언트는 서버에 요청을 보내고, 응답을 대기 • 서버가 요청에 대한 결과를 만들어서 응답 - 클라이언트가 요청을 ..

URI & URL & URN

URI 단어 뜻 • Uniform: 리소스 식별하는 통일된 방식 • Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음) • Identifier: 다른 항목과 구분하는데 필요한 정보 • URL: Uniform Resource Locator -- 자원의 위치 • URN: Uniform Resource Name -- 자원의 이름 URL == URI 를 같은 의미로 생각하면 됨 URN은 잘 사용하지 않음 URL 전체 문법 • scheme://[userinfo@]host[:port][/path][?query] • https://www.google.com:443/search?q=hello&hl=ko • 프로토콜(https) • 호스트명(www.google.com) • 포트 번호(443) • 패스..