반응형

http 8

[매트 스터디] 5주차 HTTP 헤더2 - 캐시와 조건부 요청

우아한테크코스 레벨2 에서 매트가 주관한 스터디로, 인프런 김영한님의 강의 모든 개발자를 위한 HTTP 웹 기본 지식 스터디를 진행중이다. 이 포스팅에서는 스터디에 PR을 날릴 내용과 함께 스터디 시간에 얻어간 내용을 적을 예정이다. 캐시 기본 동작 HTTP 헤더의 cache-control에 캐시 유효기간(max-age)를 설정해줌으로써 캐시를 적용할 수 있다. 캐시 가능 시간동안 네트워크를 사용하지 않아도 브라우저 캐시에 존재한 요청은 요청 측의 메모리나 하드디스크에서 꺼내게 해 빠르게 응답해줄 수 있다. (like. Dynamic Programming) 캐시 가능 시간이 초과된 경우, 서버를 통해 다시 데이터를 조회하고 갱신하여 캐시가 없을 때와 동일하게 느려짐. 검증 헤더와 조건부 요청 1 캐시 가..

CS/Http, Network 2022.06.01

[매트 스터디] 4주차 HTTP 헤더 1 - 일반 헤더

우아한테크코스 레벨2 에서 매트가 주관한 스터디로, 인프런 김영한님의 강의 모든 개발자를 위한 HTTP 웹 기본 지식 스터디를 진행중이다. 이 포스팅에서는 스터디에 PR을 날릴 내용과 함께 스터디 시간에 얻어간 내용을 적을 예정이다. HTTP 헤더 개요 RFC2616 (과거) HTTP 헤더 General 헤더: 메시지 전체에 적용되는 정보 Request 헤더: 요청 정보 (요청 시에만 존재) Response 헤더: 응답 정보 (응답 시에만 존재) Entity 헤더: Entity 본문을 해석할 수 있는 정보 제공 HTTP 바디 Entity 헤더: Entity 본문을 해석할 수 있는 정보 제공 Entity 본문: 실제 전달할 데이터 메시지 본문에는 Entity 본문 내용이 포함돼있음. RFC7230 (최신)..

CS/Http, Network 2022.05.22

[매트 스터디] 3주차 HTTP 메서드 활용 & HTTP 상태코드

우아한테크코스 레벨2 에서 매트가 주관한 스터디로, 인프런 김영한님의 강의 모든 개발자를 위한 HTTP 웹 기본 지식 스터디를 진행중이다. 이 포스팅에서는 스터디에 PR을 날릴 내용과 함께 스터디 시간에 얻어간 내용을 적을 예정이다. 1. HTTP 메서드 활용 클라이언트에서 서버로 데이터 전송 쿼리 파라미터를 통해 전송할 때 주로 데이터를 조회할 때, 즉 GET Http method에서 쿼리 파라미터를 통해 전송하는 경우가 많다. 만약 쿼리 파라미터가 아닌 메시지 바디를 통해 데이터를 전송할 경우에도 크게 문제는 없긴 하다. 하지만 간단한 정적 데이터의 경우에도 메시지 바디를 통해 데이터를 전송하여 위처럼 난독화를 시킬 필요는 없다. 단순한 데이터 조회는 리소스 경로 혹은 쿼리파라미터에 전달하여 key-..

CS/Http, Network 2022.05.15

[ERROR] Required request body is missing 해결

Required request body is missing 이 에러를 본 적 있는가? 해석해보자면 요청의 body에 존재해야될 것이 존재하지 않는다는 것이다. 보통 400 Bad Request, 415 Unsupported Media Type 에러와 함께 발생할 확률이 높다. 해당 api를 사용할 때 요청에 들어있는 객체를 이용해서 처리하는데, 정작 요청 body에 값이 없는 것이다. 주로 POST, PUT http method API를 사용할 때 많이 발생한다. 해결 방법은 어떻게 될까? 1. (가장 높은 확률로) 요청 body에 담긴 값이 JSON이 아닐 때 400 Bad Request, 415 Unsupported Media Type 에러와 함께 postman을 이용하여 간접적으로 api 호출을 할..

[ERROR] Request method 'GET' not supported 해결

Request method 'GET' not supported 뿐만 아니라 Request method 'GET' not supported, Request method 'PUT' not supported 등등. Request method '{HTTP method}' not supported 관련 에러가 뜰 때 해당되는 포스팅이다. 보통 405 Method Not Allowed, 500 Internal Server Error와 함께 발생할 확률이 높다. 나의 경우는 특정 기능을 수행하거나 테스트할 때 위 문구와 함께 500 에러가 발생했다. 원래대로라면 body에 원하는 객체의 속성들이 담겨있어야 한다. 하지만 결과는? com.fasterxml.jackson.databind.exc.UnrecognizedPr..

[매트 스터디] 2주차 HTTP 기본 & HTTP 메서드

우아한테크코스 레벨2 에서 매트가 주관한 스터디로, 인프런 김영한님의 강의 모든 개발자를 위한 HTTP 웹 기본 지식 스터디를 진행중이다. 이 포스팅에서는 스터디에 PR을 날릴 내용과 함께 스터디 시간에 얻어간 내용을 적을 예정이다. 1. HTTP 기본 우리는 대부분의 통신을 Http에 넣어서 통신하고 있다. Html, Text, Json, Xml 등. 데이터를 주고받을 때에 Http를 사용하기 때문에 개발자라면 Http 지식은 기본 교양으로 가지고 있어야 한다. 현재 우리가 가장 많이 사용하고 있는 것은 Http/1.1 버전이다. Http/2, Http/3 버전이 있음에도 Http/1.1 버전을 사용하는 이유는 우리가 필요로 하는 기본 스펙이 충분히 존재하기 때문이다. Http/2, Http/3 버전은..

CS/Http, Network 2022.05.09

[매트 스터디] 1주차 인터넷 네트워크 & URI와 웹 브라우저 요청 흐름

우아한테크코스 레벨2 에서 매트가 주관한 스터디로, 모든 개발자를 위한 HTTP 웹 기본 지식 스터디를 진행중이다. 이 포스팅에서는 스터디에 PR을 날릴 내용과 함께 스터디 시간에 얻어간 내용을 적을 예정이다. PR에 적을 내용은 아래와 같다. 인프런 강의를 듣고 요약한 내용 인프런 강의 QNA를 보고 공부한 내용 책/구글링을 통해 추가적으로 공부한 내용 매주 주말에 작성할 예정이며, 월요일에 스터디를 진행하고 추가로 내용을 더 기록할 예정이다. 1. 인터넷 네트워크 우리는 인터넷 네트워크를 통해 수많은 통신을 하고 있다. 당장 모르는 내용이 생겨 구글링을 할 때도, 새로운 맛집을 찾기 위해 네이버 지도를 킬 때에도 우리는 항상 네트워크를 연결하여 요청을 보내고 응답을 받고 있다. 이번 시간에는 네트워크..

CS/Http, Network 2022.04.30

[Javascript] fetch 함수로 api를 호출하여 응답을 받아보자

fetch 함수를 이용하면 새로고침 없이 api를 호출하여 http 요청을 보내고 응답을 받아올 수 있다. 이번 포스팅은 스프링으로 개발된 백엔드 코드의 api를 호출하여 json 객체를 fetch 함수를 이용하여 응답을 받아보는 걸 배운 과정을 기록할 것이다. 과정 속에서 내가 발생시킨 어이없는 실수, 멍청한 실수들을 기록해두어, 다음엔 실수하지 않도록 하기 위함이다. 꼭 백엔드 환경이 스프링+자바가 아니더라도 상관없다. 참고로 fetch 공식 문서는 아래 링크에서 확인가능하다. https://ko.javascript.info/fetch fetch ko.javascript.info fetch 함수 - GET 아래와 같은 응답을 보내주는 api가 있다. @GetMapping("/rooms") public..

반응형