본문 바로가기

server

HTTP HEADER

개념


represation header

 

Content-Type.    ex) application/JSON  ( 어떤 형식으로 전달할지 모르기 때문에 알려줘야 함 ex) byte JSON html)

 

Content-Length 

 

Content-Language. ex) ko en en-US

 

    content-negotiation : 

 

   ex) 클라이언트가 해더로 /evnt  GET /event ACCEPT-Language: ko 요청 

 

   협상과 우선순위

 

   1. 언어 가중치에 따라 준다

   2. 구체적인 것을 우선한다. 

===========================

전송방법

1.Content-Encoding =gzip

2.Transfer-Encoding:

chunked 방식 한번에 보내지 말고 나눠서 보내는거 이럴 때는 컨텐트 length를 보내면안됨

3.   Content-Range 

  

 

 

일반 정보

 

from : 누가 내 사이트 크롤링 했을 때 

Referer : 이전 사이트를 보여줌 ex) 유입 경로를 분석 가능

user-Agent : 클라이언트 앱 에플리케이션 내용 보여줌   

 

특별 정보

 

Host 호스트 정보 (도메인)

 

GET /hello HTTP/1.1

Host: aaa.com

Location:  url

Allow 허용 가능한 매서드

Retry-After

 

 

 

인증

 

401 스팩을 날려줄 때 인증과 관련 필요 정보를 제공한다

 

쿠키

 

문제

ex) 내가 오전에 로그인하고 오후에 다시 로그인하면 서버는 Stateless 원칙에 의해 전 요청에 대한 

내용을 기억하지 못한다. 그래서 오후에 홍길동으로 로그인하여도 서버는 "안녕하세요 손님" 이라고 답할 것이다

 

해결

1. POST /login HTTp/1.1

 

2.  HTTP/1.1 200 OK

     Set-cookie: user- 홍길동

3. 웹브라우저가 쿠기저장소에 먼저 찾아서 해결 

 

 

문제 

계속 웹 어플리케이션 쿠키에 저장되면 보안 문제가 됨

 

해결

 

1.sessionid=abcd1234 db에 저장하고 expireds=Sat  를 통해 기한을 정한다 이를 웹 어플리케이션이 쿠키에 저장

로그인 할 때마다 자동으로 sessioid 정보를 같이 보냄

2. 사용처 : 로그인  광고 정보 트래킹 

3. 쿠키는 도메인을 지정할 수 있음

 

 

 

 

 

 

 

     

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'server' 카테고리의 다른 글

브라우저 가동 원리  (0) 2021.11.18
cache  (0) 2021.11.03
http 상태코드  (0) 2021.11.03
회원관리 시스템  (0) 2021.11.03
HTTP API URL 설계  (0) 2021.11.02