네트워크
-
HTTP 프로토콜네트워크/HTTP 2021. 5. 28. 17:49
서론 rest api -> HTTP 프로토콜 순서로 궁금해져서 찾아본 내용들입니다. 한 번에 다 적기에는 글이 너무 길어져서 포스팅을 나눠서 쓸 예정이므로 몇 내용들이 빠질 수 있습니다. HTTP HTTP(HyperText Transfer Protocol)는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜입니다. 위와 같이 HTTP는 Application 계층 수준에서 사용되는 많은 프로토콜 중 하나일 뿐입니다. 연결은 전송 계층에(TCP, UDP)서 제어되므로 근본적으로 HTTP 영역 밖입니다. HTTP 1.0~2.0까지는 TCP, HTTP 3.0부터는 UDP를 쓰고 있는데요, 이에 대한 내용은 다음 포스팅에 다루도록 하겠습니다. HTTP 작동 방식 HTTP의 작동 방법으로는 하나는 ..
-
CORS는 무엇인가네트워크 2021. 5. 13. 23:57
서론 API를 사용한다고 한다면 CORS 에러는 한 번쯤은 접하기 십상이다. 대체 CORS가 뭐길래 CORS라는 것을 허용을 해줘야 하는 걸까 하는 의문이 들었다. CORS가 뭐지? CORS는 Cross-Origin Resource Sharing (교차 출처 리소스 공유)의 약자로 서버 자체가 원본이 아닌 다른 오리진(도메인, 스키마, 포트)을 표시할 수 있는 HTTP 헤더 기반 메커니즘이다. 또한 CORS는 서버가 실제 요청을 허용하는지 확인하기 위해 브라우저가 교차 오리진 자원을 호스팅 하는 서버에 Preflight(사전 요청)을 하는 메커니즘에 의존한다. 이 사전 요청에서는 브라우저가 HTTP 메서드를 나타내는 헤더와 실제 요청에 사용될 헤더를 보낸다. Preflight 란 더보기 CORS에서 Pr..
-
HTTP 응답코드네트워크/HTTP 2021. 5. 10. 23:03
서론 이 글은 단순히 HTTP 응답 코드를 나열한 내용입니다. 또한 몇가지 응답 코드들이 빠져있으므로 찾는 내용이 없다면 다른 페이지에서 찾는 것을 추천드립니다. 1XX코드 상태코드 설명 100 계속 중간 응답. 요청의 초기 부분이 수신되었지만 아직 서버에서 거부되지 않았음을 클라이언트에 나타낸다. 101 스위칭 프로토콜 클라이언트에서 업그레이드 요청 헤더에 응답하여 전송되며, 서버가 전환 중인 프로토콜을 나타낸다. 102 처리 서버가 요청을 수신하여 처리 중이지만 아직 응답을 사용할 수 없음을 나타낸다. 103 초기 힌트 주로 링크 헤더와 함께 사용된다. 서버가 최종 응답을 준비하는 동안 사용자 에이전트가 리소스를 미리 로드하는 것이 좋다 2XX코드 200(OK) REST API가 클라이언트가 요청한 ..
-
RESTful한 API에 대한 고찰네트워크 2021. 5. 10. 17:48
서론 django와 react를 사용하여 api를 활용한 간단한 사이트를 만드는 프로젝트를 진행 하다보니 자꾸만 쌓여가는 api url과 view들, 그리고 각 페이지마다 연결되지 않는 api들을 보면서 과연 RESTful한(이 때 생각한건 짧고 멋진 api url을 생각했다.) api를 설계하려면 어떻게 해야하는가 의문이 들었다. **추가 여기서는 이론적인 내용을 다루고 있기 때문에 좀 더 쉽게 알고싶다면 아래 링크를 참조하는것이 좋다. 상당히 쉽고 재밌게 풀어쓴 글이라 강력하게 추천한다. https://evan-moon.github.io/2020/04/07/about-restful-api/#restful-api 프론트엔드와 백엔드가 소통하는 엔드포인트, RESTful API 이번 포스팅에서는 프론트엔..