본문 바로가기

네트워크9

HTTP 웹 기본 지식 - HTTP 헤더(캐시와 조건부 요청) 캐시 기본 동작❓ 클라이언트가 서버에 star.jpg라는 이미지를 요청했을때❗ 캐시가 없을때는 서버에서 Header와 요청에 맞는 Body를 클라이언트에게 보내줄 것이다. ( 너무 당연...😓 ) 데이터가 변경되지 않아도 요청시마다 네트워크를 통해 데이터를 받아야한다. 인터넷 네트워크는 매우 느리고 비싸다. 네트워크가 환경이 좋지 않거나 데이터가 방대하면 브라우저 로딩 속도가 느리게 느낄수 있다. 캐시를 적용하게되면 서버는 Header부분에 cache-control을 넣고 응답을 보내준다. ( 물론 서버에 캐시부분을 설정해줘야한다. ) 그리고 캐시서버에 데이터를 저장한다👏 cache-control : max-age=60 -> 캐시가 유효한 시간(초) 를 의미한다. 클라이언트가 두번째 요청을 했을때 캐시에.. 2021. 10. 19.
HTTP 웹 기본 지식 - HTTP 헤더(일반 헤더) HTTP 헤더❓ HTTP 헤더에는 HTTP 전송에 필요한 모든 부가정보들이 들어가있다👍 메시지 바디의 내용, 타입과 크기, 요청 클라이언트 정보, 서버의 정보 등 엄청나게 많은 정보들이 들어가 있다. HTTP 표준 변경❓ 2014년 HTTP 표준이 변경되면서 기존의 엔티티라는 용어는 사라지고 표현(Representation)으로 용어가 변경된다💡 엔티티 헤더 -> 표현 헤더, 엔티티 바디 -> 표현 데이터 메시지 본문 = 페이로드(payload) 표현 헤더❓ 표현 데이터의 메타 데이터 정보들이 들어가있다💡 표현 헤더는 전송과 응답 모두 사용할 수 있다❗ Content-Type - 표현 데이터의 형식을 의미한다. ex) text/html; charset=UTF-8 , application/json 등.. .. 2021. 9. 16.
HTTP 웹 기본 지식 - HTTP 상태코드 HTTP 상태코드❓ 1xx(Informational) : 요청이 수신되어 처리중 2xx(Successful) : 요청 정상 처리 3xx(Redirection) : 요청을 완료하려면 추가적인 행동이 필요 4xx(Client Error) : 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없음. 5xx(Server Error) : 서버 오류, 서버가 정상 요청을 처리하지 못함 2xx - 성공 200 OK - 요청이 성공하면 응답이 성공했을때(주로 GET) 201 Created - 요청이 성공해서 새로운 리소스가 생성됐을때 사용(주로 POST) 202 Accepted - 요청은 접수되었으나 처리가 아직 완료되지 않았을때 사용(잘 사용하지 않음) 204 No Content - 요청은 성공했지만, 응.. 2021. 9. 4.
HTTP 웹 기본 지식 - HTTP 메서드 HTTP API 설계❓ 좋은 API URI 설계의 가장 중요한 것은 리소스 식별이다. 리소스라는 것은 어떤 행위를 말하는 것이 아니라, 그 행위의 주체/대상이 리소스가된다. 예를 들어 회원 등록, 회원 삭제가 리소스가 아니라 회원이라는 개념 자체가 리소스이다. API 설계 시 리소스와 행위를 분리하고, 리소스를 식별하는 것이 가장 중요하다👍 HTTP 메서드❓ HTTP의 주요 메서드는 5가지 정도 된다. GET : 리소스 조회 POST : 요청 데이터 처리, 주로 등록에 사용 PUT : 리소스를 대체, 해당 리소스가 없으면 새로 생성 PATCH : 리소스 수정(부분 변경) DELETE : 리소스 삭제 GET❓ 이름에서 알 수 있듯이 리소스를 조회하는 데 사용한다. 서버에 전달하고 싶은 데이터는 query(.. 2021. 8. 30.
HTTP 웹 기본 지식 - HTTP 기본 HTTP❓❓ HTTP는 HyperText Transfer Protocol 이다. HTTP는 초기에 문서를 전달하기 위해 고안된 프로토콜이었다. 하지만 요즘엔 거의 모든 것을 HTTP프로토콜에 담아서 보내고있다. ( HTML, TEXT, IMAGE, FILE, JSON, XML 등등 ) HTTP/1.1 버전이 가장 많이 사용되고, 가장 중요한 버전이다. 기능의 대부분은 1.1버전에서 만들어졌고, 이후에 나오는 HTTP/2, HTTP/3버전은 거의 성능개선에 초점이 맞춰져있다. TCP : HTTP/1.1, HTTP/2 (HTTP/1.1 과 HTTP/2 는 TCP프로토콜 위에서 동작을 한다. UDP : HTTP/3 (HTTP/3는 UDP프로토콜을 기반으로 개발되었다.) HTTP의 4가지 특징 클라이언트 - 서.. 2021. 8. 27.
HTTP 웹 기본 지식 - URI와 웹 브라우저 요청 흐름 URI(Uniform Resource Identifier)❓ URI? URL? URN? 세 가지의 차이점은 무엇일까🤔🤔 URI가 가장 큰 개념이다. 여기서 I는 Identifier로 식별의 의미로, 리소스 즉 자원을 식별할 수 있는 형태를 의미한다. URI안에는 URL과 URN이 존재하는데, L은 Locator(위치)를 의미해서 리소스가 존재하는 위치를 의미하고, N은 Name 말 그대로 리소스의 이름을 의미한다. URN은 사실상 구분하기가 어렵기때문에 거의 URL을 사용한다고 보면 된다. URL의 기본 구조❓ scheme://[userinfo@]host[:port][/path][?query][#fragment] https://www.google.com/search?q=hello&hl=ko ※ useri.. 2021. 8. 24.
반응형