clent와 server 사이에는 복잡한 internet을 거쳐서 통신을 한다.이 인터넷은 해저 캐이블이나, 인공 위성등 다양한 형태로 존재한다.이 복작한 인터넷 망에서 어떻게 client와 server는 서로 찾아갈 수 있을까?IP라는 주소를 통해서 패킷이라는 단위로
패킷의 순서가 바뀌거나 소실되는 문제의 해결을 위해 TCP가 존재한다.애플리케이션 계층 - HTTP, FTP전송 계층 - TCP, UDP인터넷 계층 - IP네트워크 인터페이스 계층여기서 전송계층, 인터넷 계층은 OS 영역이며,네트워크 인터페이스 계층은 실제 LAN 드라
URI = Uniform Resource IdenfierUniform: 리소스 식별하는 통일된 방식Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음)Identifier: 다른 항목과 구분하는데 필요한 정보URI는 로케이터(locator), 이름(na
HTTP - HyperText Transfer ProtocolHTTP 메세지에 모든 것을 전송할 수 있다.HTML, TEXTIMAGE, 음성, 영상, 파일JSON, XML (API)등 거의 모든 형태의 데이터 전송 가능HTTP/0.9 1991년: GET 메서드만 지원,
• 클라이언트는 서버에 요청을 보내고, 응답을 대기• 서버가 요청에 대한 결과를 만들어서 응답서버가 클라이언트의 상태를 보존하지 않는다. ( stateless )장점: 서버 확장성이 높다상태를 저장하지 않으므로, 무상태는 응답 서버를 쉽게 바꿀 수 있다. -> 무한한
클라이언트, 서버의 통신은 HTTP 메세지를 주고 받는 형식이다.각각 요청 HTTP 메세지, 응답 HTTP 메세지로 나뉘며, 이때 메세지별 세부적인 정보 차이가 있다.왜 HTTP로 통신하냐는 질문에는 HTTP 메시지도 매우 단순하다는 이유가 대답이 된다.크게 성공하는
API를 설계할 때 가장 중요한 것은 리소스 식별이다.회원이라는 리소스가 있다고 할 때 다음과 같이 설계한다 가정해보자.회원 목록 조회 /members회원 조회 /members/{id}회원 등록 /members/{id}회원 수정 /members/{id}회원 삭제 /me
HTTP의 주요 메서드는 다음과 같다.GET: 리소스 조회POST: 요청 데이터 처리, 주로 등록에 사용PUT: 리소스를 대체, 해당 리소스가 없으면 생성PATCH: 리소스 부분 변경DELETE: 리소스 삭제이외에도 HEAD, OPTIONS, CONNECT, TRACE
클라이언트가 보낸 요청에 대한 처리 상태를 응답에서 HTTP 헤더 부분을 통해서 알려준다. HTTP 상태 종류 1xx (Informational): 요청이 수신되어 처리중 2xx (Successful): 요청 정상 처리 3xx (Redirection): 요청을 완료하
HTTP 메세지에 대한 모든 메타 정보가 들어가며메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보등 전송에 필요한 모든 정보가 해당된다.헤더의 종류General 헤더: 메시지 전체에 적용되는 정보, 예) Connec
클라이언트가 선호하는 표현을 요청하며, 데이터를 요청시에만 사용된다.Accept: 클라이언트가 선호하는 미디어 타입 전달Accept-Charset: 클라이언트가 선호하는 문자 인코딩Accept-Encoding: 클라이언트가 선호하는 압축 인코딩Accept-Languag
HTTP 통신은 무상태 프로토콜이라서 서버와 클라이언트가 한번 요청과 응답을 주고받으면 연결은 끊어진다.서로간의 상태를 유지하지 않으며 이전의 요청은 기억하지 않는다.단순 정보 조회라면 상관 없지만, 로그인 상태를 유지해야하는 상황이라면 어려움이 있다.이때 쿠키가 사용
이 글은 인프런의 모든 개발자를 위한 HTTP 웹 기본 지식를 보며 작성했습니다.데이터가 변경되지 않아도 네트워크를 통해 데이터를 다시 받아야 한다.이 네트워크는 매우 느리고 비싸며, 이로 인해 브라우저는 느린 속도로 로딩되며 이는 안 좋은 사용자 경험으로 이어진다.캐
여지껏 공부를 했지만, 내내 헷갈려서 계속 봐왔던 OSI 7계층에 대해 정리하고자 글을 작성했다.우선 OSI란 Open System Interconnection 의 약자로 시스템간의 개방형 접속을 나타낸다. 컴퓨터는 7개의 계층 모두를 포함하며, 이 7계층은 네트워크에