본문 바로가기

728x90

Web Infra

(6)
Cookie (쿠키) Cookie란? 웹 서버가 생성하여 웹 브라우저(클라이언트)로 전송하는 작은 정보 파일 Set-Cookie: 서버에서 클라이언트로 쿠키 전달 (응답 시) Cookie: 클라이언트가 서버에서 받은 쿠키를 저장하고, HTTP 요청 시 서버로 전달 Cookie가 필요한 이유 HTTP는 무상태(Stateless) 프로토콜 (클라이언트와 서버는 서로 상태를 유지 X) 클라이언트와 서버가 요청과 응답을 주고받으면 연결이 끊어진다. 클라이언트가 다시 요청하면 서버는 이전 요청을 기억하지 못하는 문제 발생 로그인 시, 새로고침 할 때마다 매번 로그인을 해야 하는 번거로움 발생 대안: 모든 요청에 사용자 정보를 포함해서 요청 보안 문제 발생 가능 모든 요청에 사용자 정보 포함되도록 개발해야 하는 어려움 브라우저를 완전히..
HTTP 헤더 정보 일반 정보 From: 유저 에이전트의 이메일 정보 Referer: 이전 웹 페이지 주소 User-Agent: 유저 에이전트 애플리케이션 정보 Server: 요청을 처리하는 Origin 서버의 소프트웨어 정보 Date: 메시지가 생성된 날짜 From: 유저 에이전트의 이메일 정보 (요청 시 사용) 일반적으로 잘 사용하지 않음 검색 엔진 같은 곳에서 주로 사용 Referer: 이전 웹 페이지 주소 (요청 시 사용) 현재 요청된 페이지의 이전 웹 페이지 주소 A → B로 이동하는 경우, B를 요청할 때 Referer: A를 포함해서 요청 Referer를 사용해서 유입 경로 분석 가능 참고로, referer는 referrer의 오타 User-Agent: 유저 에이전트 애플리케이션 정보 (요청 시 사용) 클라이언..
HTTP 헤더 HTTP 헤더 header-field = field-name ":" OWS field-value OWS (OWS: 띄어쓰기 허용) field-name은 대소문자 구분 없음 HTTP 전송에 필요한 모든 부가정보 포함 ex) 메시지 바디 내용, 메시지 바디 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보 등 필요시 임의의 헤더 추가 가능 과거 스펙 - RFC2616 HTTP 헤더 분류 General 헤더: 메시지 전체에 적용되는 정보, 예) Connection: close Request 헤더: 요청 정보, 예) User-Agent: Mozilla/5.0 (Macintosh;..) Response 헤더: 응답 정보, 예) Server: Apache Entity 헤더: 엔티티 바디 정보, 예..
HTTP 상태코드 상태코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 1xx (Informational): 요청이 수신되어 처리중 2xx (Successful): 요청 정상 처리 3xx (Redirection): 요청을 완료하려면 추가 행동이 필요 (리다이렉션) 4xx (Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없음 5xx (Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못함 2XX 클라이언트의 요청을 성공적으로 처리 200 : OK, 요청 성공 201 : Created, 요청 성공해서 새로운 리소스 생성 (POST 명령) 생성된 리소스는 응답의 Location 헤더 필드로 식별 202 : Accepted, 요청이 접수되었으나 처리가 완..
HTTP 메서드 API URI 만들기 URI를 만드는 데에 있어 가장 중요한 것은 리소스를 식별하는 것 예시) 회원 관리 API를 만들 때, 아래와 같은 API 필요 회원 목록 조회 회원 조회 회원 등록 회원 수정 회원 삭제 여기서 리소스는 회원이라는 개념 자체이다. 이 리소스를 어떻게 식별해야 할까? 회원이라는 리소스만 식별하면 된다.(id) → 회원 리소스를 URI에 mapping 회원 목록 조회: /members 회원 조회: /members/{id} 회원 등록: /members/{id} 회원 수정: /members/{id} 회원 삭제: /members/{id} 참고로, 계층 구조상 상위를 컬렉션으로 보고 복수단어 사용 권장 (member X, members O) 위의 리소스 식별된 각각의 URI들을 각 행위(조회,..
인터넷 프로토콜과 HTTP 개요 IP(인터넷 프로토콜) 지정한 IP 주소에 데이터 전달 패킷(Packet)이라는 통신 단위로 데이터 전달 IP 패킷 정보: 출발지 IP, 목적지 IP, 기타 IP 프로토콜의 한계 비연결성: 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송 비신뢰성: 중간에 패킷이 사라지거나, 패킷이 순서대로 온다는 보장이 없음 프로그램 구분: 같은 IP를 사용하는 서버에서 통신하는 애플리케이션을 구별할 수 없음 TCP(전송 제어 프로토콜 - Transmission Control Protocol) TCP 패킷 정보: 출발지 PORT, 목적지 PORT, 전송 제어, 순서, 검증 정보 등 TCP/IP 패킷이 합쳐지면서 출발지/목적지 IP와 PORT 정보 확인 가능 TCP 특징 연결지향: TCP 3 way handsh..

728x90
반응형