web
Http Header 분석하기
datajoy
2020. 2. 28. 20:19
공통
Method
- GET : 리소스를 조회.
- POST : 리소스 생성합니다.
- PUT : 리소스 수정.
- DELETE : 리소스 삭제.
Connection
- 클라이언트와 서버의 연결방식.
- Connection: close #클라이언트와 접속중단.
- Connection: Keep-Alive #클라이언트와 접속유지.
Cache-Control
- no-store : 캐시를 저장하지 않겠다.
- no-cache : 모든 캐시를 쓰기 전에 서버에 해당 캐시를 사용해도 되는지 확인하겠다.
- must-revalidate : 만료된 캐시만 서버에 확인하겠다.
- public : 공유 캐시에 저장해도 된다.
- private : '브라우저' 같은 특정 사용자 환경에만 저장하겠다.
- max-age : 캐시의 유효시간을 명시하겠다.
Content-Length
- 요청과 응답의 본문 크기(byte 단위)
- ex) Content-Length:85040
Content-Type
1) Multipart Related MIME 타입
- Content-Type: Multipart/related <-- 기본형태
- Content-Type: Application/X-FixedRecord
2) XML Media의 타입
- Content-Type: text/xml
- Content-Type: Application/xml
- Content-Type: Application/xml-external-parsed-entity
- Content-Type: Application/xml-dtd
- Content-Type: Application/mathtml+xml
- Content-Type: Application/xslt+xml
3) Application의 타입
- Content-Type: Application/EDI-X12 <-- Defined in RFC 1767
- Content-Type: Application/EDIFACT <-- Defined in RFC 1767
- Content-Type: Application/javascript <-- Defined in RFC 4329
- Content-Type: Application/octet-stream : <-- 디폴트 미디어 타입은 운영체제 종종 실행파일, 다운로드를 의미
- Content-Type: Application/ogg <-- Defined in RFC 3534
- Content-Type: Application/x-shockwave-flash <-- Adobe Flash files
- Content-Type: Application/json <-- JavaScript Object Notation JSON; Defined in RFC 4627
- Content-Type: Application/x-www-form-urlencode <-- HTML Form 형태
- x-www-form-urlencode와 multipart/form-data은 둘다 폼 형태이지만 x-www-form-urlencode은 대용량 바이너리 테이터를 전송하기에 비능률적이기 때문에 대부분 첨부파일은 multipart/form-data를 사용하게 된다.
4) 오디오 타입
- Content-Type: audio/mpeg <-- MP3 or other MPEG audio
- Content-Type: audio/x-ms-wma <-- Windows Media Audio;
- Content-Type: audio/vnd.rn-realaudio <-- RealAudio; 등등
5) Multipart 타입
- Content-Type: multipart/mixed: MIME E-mail;
- Content-Type: multipart/alternative: MIME E-mail;
- Content-Type: multipart/related: MIME E-mail <-- Defined in RFC 2387 and used by MHTML(HTML mail)
- Content-Type: multipart/formed-data <-- 파일 첨부
6) TEXT 타입
- Content-Type: text/css
- Content-Type: text/html
- Content-Type: text/javascript
- Content-Type: text/plain
- Content-Type: text/xml
7) file 타입
- Content-Type: application/msword <-- doc
- Content-Type: application/pdf <-- pdf
- Content-Type: application/vnd.ms-excel <-- xls
- Content-Type: application/x-javascript <-- js
- Content-Type: application/zip <-- zip
- Content-Type: image/jpeg <-- jpeg, jpg, jpe
- Content-Type: text/css <-- css
- Content-Type: text/html <-- html, htm
- Content-Type: text/plain <-- txt
- Content-Type: text/xml <-- xml
- Content-Type: text/xsl <-- xsl
Request Header
Host
- 요청하는 서버 도메인 네임. 반드시 하나가 존재해야한다.
User-Agent
- 요청하는 사용자가 어떤 클라이언트(운영체제, 브라우저, 앱 등)를 통해 요청했는지 알 수 있다.
Accept
- 클라이언트가 허용 할 수 있는 파일 형식
Cookie
- 클라이언트 서버간에 쿠키를 주고받는 정보 표기.
- session 정보, JWT 등
Origin
- 서버로 Post 요청을 보낼 때 요청이 어느 주소에서 시작되었는지 나타내는 값.
- 이 값으로 요청을 보낸 주소와 받는 주소가 다르면 CORS 에러가 난다.
If-Modified-Since
Refer
Authorization
- 인증토큰을 서버로 보낼때 사용하는 헤더
Response Header
Server
- 웹서버 정보
Access-Control-Allow-Origin
- Access-Control-Request-Method : 실제로 보내려는 메서드
- Access-Control-Request-Headers : 실제로 보내려는 헤더
- Access-Control-Allow-Methods : 서버가 허용하는 메서드
- Access-Control-Allow-Headers : 서버가 허용하는 헤더
Allow
Content-Disposition
- 응답 본문을 브라우저가 어떻게 표시해야할지 알려주는 헤더
Location
- 300번대 응답 또는 201 Created 응답 일 때 어떤 페이지로 이동하는지 알려주는 헤더
Content-Security-Policy