일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- python
- QueryDSL 기초
- pkce
- 12865번
- 백준 알고리즘
- 19238번
- 스타트 택시
- 2020 카카오 인턴십
- HTML 기초
- 경주로 건설
- 프로그래머스
- 파이썬
- 1038번
- 17144번
- 거울 설치
- 9095번
- 12869번
- SW Expert Academy
- SW ExpertAcademy
- 14499번
- 키패드 누르기
- 보석 쇼핑
- 수식 최대화
- 1789번
- 빛의 경로 사이클
- 16234번
- 베스트엘범
- 감소하는 수
- 15686번
- 미세먼지 안녕!
- Today
- Total
목록웹 개발 (11)
보물창고 블로그
CORS(Cross-Origin Resource Sharing)는 브라우저가 웹 페이지의 원본이 아닌 다른 출처(도메인, 프로토콜, 포트)로부터 리소스를 로드하는 것을 허용하기 위한 HTTP 헤더 기반의 메커니즘입니다. 왜 CORS가 필요할까요? 이것을 이해하려면 동일 출처 정책(Same-Origin Policy)" 개념부터 이해해야 합니다. Same-Origin Policy는 웹 브라우저의 보안 정책 중 하나로, "서로 다른 출처(origin)의 리소스 간 접근을 제한"합니다.이는 사용자의 데이터를 악의적인 웹사이트로부터 보호하기 위한 기본 장치입니다. 여기서 간단하게 출처에 대해 알아보겠습니다.✅ "출처(origin)"란?출처(origin)는 다음 세 가지로 정의됩니다: 프로토콜 (http, ht..

Spring Interceptor에 대해 알아보겠습니다.✅ 인터셉터란?HTTP 요청이 컨트롤러(Handler)로 도달하기 전과 후에 실행되는 객체스프링 MVC가 제공하는 기능이며, 공통 처리 로직을 삽입할 수 있습니다.주로 인증/인가 처리나 로깅/모니터링 처리, 요청 헤더 검사에 사용합니다. ✅ 인터셉터 호출 흐름스프링 인터셉터 호출의 흐름도 입니다.1 ✅ 인터셉터 구조인터셉터는 HandlerInterceptor 인터페이스를 구현하여 작성합니다.@Componentpublic class MyInterceptor implements HandlerInterceptor { // 컨트롤러 실행 전에 호출 @Override public boolean preHandle(HttpServletReques..

Spring filter에 대해 알아보도록 하겠습니다.✅ Filter (javax.servlet.Filter) Filter는 Java EE / Jakarta EE의 서블릿 스펙에 정의된 인터페이스입니다.패키지: javax.servlet.Filter 또는 jakarta.servlet.Filter스프링이 아닌, 톰캣(Tomcat), 제티(Jetty), 언더토우(Undertow) 같은 서블릿 컨테이너가 인식하고 실행합니다. Servlet 스펙에 포함되어 있으며, 모든 HTTP 요청과 응답에 대해 동작할 수 있습니다. DispatcherServlet이 실행되기 이전 단계 즉, 스프링 프레임워크보다 더 아래에 위치하고 있습니다. 그런데 왜 Spring Filter라고 부르는 걸까요? 바로 스프링 부트가 Filte..

1. 왜 JWT가 필요한가?웹 애플리케이션에서 사용자 인증을 구현할 때, 가장 흔히 쓰이는 방식은 세션 기반 인증입니다. 하지만 이 방식은 서버가 세션 상태를 유지해야 하므로, 서버가 여러 대로 확장되거나 마이크로서비스 환경에서는 관리가 어렵습니다.이러한 한계를 해결하기 위해 등장한 방식이 토큰 기반 인증입니다. 그중에서도 가장 널리 사용되는 방식이 바로 JWT (JSON Web Token)입니다.JWT는 인증 정보를 토큰 형태로 클라이언트에 저장하고, 요청마다 이 토큰을 함께 보내 인증을 수행합니다.2. JWT란? 구조 설명JWT는 .(닷)으로 구분된 3개의 Base64Url 인코딩 문자열로 구성됩니다:header.payload.signature각 부분의 역할은 다음과 같습니다 Header : 토큰..