Spring에서의 ETag Spring에서도 ETag를 손쉽게 사용할 수 있도록 지원하고 있다. 그 중 리소스 캐싱에 대한 기능은 여러 API에서 공통으로 사용할 수 있는 기능이기에 Filter로서 지원하고 있다. 충돌 피하기 (Lost update problem)에 대해서는 지원하지 않는 듯하다. 이에 대해서는 뒤에서 더 알아보자. ShallowEtagHeaderFilter class에서 지원한다. GitHub - spring-projects/spring-framework: Spring Framework Spring Framework. Contribute to spring-projects/spring-framework development by creating an account on GitHub. g..
HTTP Message, Entity HTTP Message는 서버와 클라이언트가 HTTP 통신 내에서 서로 주고받는 데이터를 의미한다. 보통 클라이언트에서 서버로 '요청'하는 메시지를 HTTP Request Message라고 하고, 반대로 서버가 클라이언트에게 응답하는 메시지를 HTTP Response Message라고 한다. Entity는 HTTP Message의 일부라고 생각하면 된다. 여러 외부 자료에서 HTTP Message가 컨테이너면 Entity는 화물이라고 비유하고 있다. Entity는 Request/Response Payload를 이루는 Raw data이다. Response header 중 Content prefix가 붙은 것들은 Entity를 표현하는 용도이다. ETag ETag는 En..
Cookie Cookie는 HTTP의 속성 중 Connectionless, Stateless 를 해결하기 위한 용도로 사용된다. Cookie를 사용함으로써 서버에선 받은 HTTP 요청이 어떠한 정보를 가진 요청이라는 것을 인식할 수 있다. 즉, HTTP 통신 간에 유지하려는 정보가 있는 경우 사용된다. Cookie는 클라이언트 브라우저(Local)에 저장되는 Key-Value 형태의 데이터이다. 서버 측에서 발급하여 클라이언트에게 보내 줌으로써 활용한다. 발급할 때, key-value 말고도 유효한 시간을 정의하여 만료되는 시간을 정할 수도 있다. 또한, path 및 domain 등을 설정하여 특정 주소에서만 사용될 수 있도록 할 수 있다. 즉, 유효한 시간까지는 브라우저가 종료되더라도 Cookie의 정..
Web Reactive Stack 공식문서의 WebClient 부분을 읽고 해석하며 작성했습니다. Web on Reactive Stack The original web framework included in the Spring Framework, Spring Web MVC, was purpose-built for the Servlet API and Servlet containers. The reactive-stack web framework, Spring WebFlux, was added later in version 5.0. It is fully non-blocking, supports docs.spring.io Markdown으로 작성 후에 블로그로 옮기게 되었는데, 깨지는 부분이 존재하네요 😢 만약..
Code: https://github.com/KimDoubleB/spring-learning/tree/master/http 개발을 하다보면, 직접 HTTP 요청을 수행해보며 테스트 해보고 싶을 때까 있다. 직접 테스트 코드를 짜는 것이 중요하고 좋지만, 시간 및 상황의 제약으로 인해 말이다. 이럴 땐, 보통 Postman을 사용한다. 워낙 오랫동안 사람들에게 사용되어 왔고, 유명하기도 하고, Collection 형태로 프로젝트 별로 요청들을 관리하기도 편하다. 근데 Intellij를 사용하다보면, 간단한 테스트 요청임에도 Postman을 키고 요청들을 구성해야하기 귀찮을 때가 있다. 그리고 요청을 많이 진행해야할 때는 프로그램 간 계속 왔다갔다 해야되서 더 귀찮아지기도 한다. 이런 경우엔 Intellij..
- Total
- Today
- Yesterday
- HTTP
- container
- python
- java
- tag
- Spring boot
- gradle
- 일상
- Intellij
- boj
- c++
- 비동기
- jasync
- k8s
- OpenTelemetry
- 쿠버네티스
- Spring
- Clean Architecture
- Algorithm
- 알고리즘
- 로그
- Log
- 하루
- Istio
- docker
- Kubernetes
- 클린 아키텍처
- MySQL
- 백준
- WebFlux
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |