Dev Knowledge/Web 7

RESTful API PUT과 PATCH의 특징과 차이점

REST API에서는 자원을 수정할 때 PUT과 PATCH 메서드를 사용한다. 둘 다 업데이트 용도로 쓰이지만, 적용 범위와 의미에서 차이가 있다. 본 글에서는 PUT과 PATCH의 정의, 특징, 예제, 그리고 실무 활용 팁을 정리한다. 1) PUT1-1) 정의PUT은 자원의 전체를 교체(Replace)하는 방식의 업데이트를 의미한다.즉, 해당 리소스를 새 데이터로 완전히 대체하며,일부 필드만 보냈을 경우 나머지 필드는 기본값이나 null로 덮어씌워질 수 있다.1-2) 특징리소스 전체 교체멱등성(Idempotent)을 보장한다. (같은 요청을 여러 번 보내도 결과가 동일)부분 업데이트에는 적합하지 않음1-3) 예제PUT /users/1Content-Type: application/json{ "id": ..

Dev Knowledge/Web 2025.09.05

[Web] Web Server와 WAS의 차이점과 기본 개념

웹 애플리케이션 아키텍처에서 웹 서버(Web Server)와 WAS(Web Application Server)는 중요한 역할을 담당한다. 두 서버 모두 클라이언트 요청을 처리하지만, 처리 방식과 목적에 있어 차이가 존재한다. 본문에서는 각각의 정의, 특징, 차이점을 정리하고 예시와 함께 살펴본다. 1) Web Server1-1) 정의Web Server는 클라이언트(브라우저)로부터 HTTP 요청을 받아정적인 콘텐츠(HTML, CSS, JavaScript, 이미지 등)를 제공하는 서버이다.1-2) 특징정적인 파일(HTML, 이미지, CSS, JS) 제공에 최적화되어 있다.요청 처리 속도가 빠르며, 리소스 소모가 적다.동적 처리를 위해서 별도의 프로그램(WAS CGI, PHP 등)과 연동해야 한다.1-3) 예..

Dev Knowledge/Web 2025.08.29

쿠키 vs 세션 vs 토큰: 저장 위치와 보안 방식 비교

웹 서비스에서 사용자 인증과 상태 유지에 흔히 사용되는 기술로는 쿠키, 세션, 토큰이 있다. 이들은 모두 사용자의 상태를 기억하거나 서버가 사용자를 식별하도록 돕는 방식이지만, 저장 위치, 보안 처리 방식, 확장성 등에서 차이가 있다. 아래에서 각각의 개념과 특징, 실제 예시를 통해 차이를 정리해본다. 1) 쿠키(Cookie)1-1) 정의클라이언트(브라우저)에 저장되는 작은 데이터 조각이다.서버가 응답 시 Set-Cookie 헤더로 쿠키를 설정할 수 있고,이후 클라이언트는 매 요청 시 쿠키를 자동 전송한다.1-2) 특징클라이언트 측 저장 → 사용자가 직접 접근하거나 수정 가능만료 시간 설정 가능 (예: 세션 쿠키 vs 영속 쿠키)매 요청마다 자동 전송되므로 네트워크 트래픽 상승 가능성 있음1-3) 예시S..

Dev Knowledge/Web 2025.08.04

[Web] HTTP 상태 코드 기초(200, 404, 500 등)

HTTP 상태 코드는 클라이언트가 서버에 요청한 결과에 대해 서버가 어떤 응답을 했는지를 알려주는 숫자 코드이다. 이 코드는 1xx부터 5xx까지 총 5가지 범주로 나뉘며, 각 범주는 서로 다른 의미를 가진다. 예를 들어 2xx는 성공을, 4xx는 클라이언트의 잘못된 요청을 의미한다. 이 글에서는 상태 코드의 의미를 구체적으로 알아보고, 실무에서 자주 마주치는 코드들을 예시와 함께 정리해본다. 1) HTTP 상태 코드란?HTTP 상태 코드는 클라이언트가 요청한 작업에 대한서버의 응답을 숫자로 표현한 것이다.이 코드는 클라이언트와 서버 간 통신에서 매우 중요한 역할을 하며,요청 처리 결과를 빠르게 파악할 수 있도록 도와준다. 2) 1xx (Informational) - 정보 응답100 Continue: 클..

Dev Knowledge/Web 2025.08.01

[Web] HTTP 멱등성이란? GET과 POST로 쉽게 이해하기

HTTP에서 멱등성은 동일한 요청을 여러 번 보내더라도 서버 상태가 같게 유지되는 성질을 의미한다. 이는 API 설계에서 중요한 기준이 되며, 특히 재시도 로직이나 캐시, 장애 복구 시 유용하게 작용한다. 이 글에서는 멱등성이란 무엇인지, 그리고 GET과 POST 요청 방식에서 어떻게 적용되는지를 예시와 함께 살펴본다. 1) 멱등성이란?1-1) 멱등성(Idempotency) 정의같은 요청을 여러 번 호출해도 결과가 동일하게 유지되는 성질을 의미한다.요청이 반복되어도 서버의 상태나 리소스에 변화가 없어야 하며,이는 클라이언트에서 안심하고 재요청을 보낼 수 있게 해준다.1-2) 예시예를 들어, 특정 사용자 정보를 조회하는 요청을 여러 번 보내더라도해당 정보는 변경되지 않으므로 멱등성이 있다.반대로, 같은 글..

Dev Knowledge/Web 2025.07.30

RESTful API GET과 POST의 특징과 차이점

RESTful API에서 가장 기본이 되는 HTTP 메서드인 GET과 POST는 사용 목적과 동작 방식에 명확한 차이가 있다. 두 메서드의 정의, 특징, 사용 목적, 예시를 통해 차이점을 자세히 정리해보자. 1) GET 메서드1-1) 정의GET은 서버로부터 데이터를 "조회"할 때 사용하는 메서드이다.클라이언트가 서버에게 정보를 요청할 때 사용되며,URL에 쿼리 파라미터를 포함시켜 전송한다. 1-2) 특징데이터를 요청하기 위한 용도로만 사용됨요청 데이터는 URL의 쿼리 스트링에 포함됨캐싱이 가능함브라우저 히스토리에 남음URL에 직접적으로 노출되기 때문에 보안에 취약할 수 있음1-3) 예시GET /user?id=123 HTTP/1.1Host: api.example.com > 위 요청은 ID가 123인 사용자..

Dev Knowledge/Web 2025.07.24

JWT(Json Web Token)란?

프로젝트를 진행하면서, 인증 방식에 대해 고민을 해봤을 때가 있었다.그중에서도 JWT 토큰 인증 방식을 사용하게 되었는데, JWT란 무엇인지, 사용하면 장점이 무엇이 있는지에 대해 간단히 알아보자. 1) JWT(Json Web Token)란?: 인증에 필요한 정보들을 암호화시킨 JSON 토큰으로, 인터넷 표준 인증 방식이다.JWT는 유저를 인증하고 식별하기 위한 토큰(Token) 기반 인증이다.토큰 자체에 사용자의 권한 정보나 서비스를 사용하기 위한 정보가 포함된다.RESTful과 같은 무상태(Stateless)인 환경에서 사용자 데이터를 주고받을 수 있다.세션(Session)을 사용하게 될 경우 쿠키 등을 통해 사용자를 식별하고 서버에 세션을 저장했지만, 토큰을 클라이언트에 저장하고 요청시 HTTP 헤..

Dev Knowledge/Web 2025.03.21