CodeGym /Java Course /모듈 3 /HTTP 헤더 파트 2

HTTP 헤더 파트 2

모듈 3
레벨 9 , 레슨 6
사용 가능

7.1 연결 유지 헤더

그리고 몇 가지 유용한 제목이 더 있습니다. Keep-Alive 헤더는 서버에 연결을 열린 상태로 유지하라고 지시합니다. 서버는 응답을 보낸 직후에 연결을 닫지 않습니다. 이로 인해 동일한 클라이언트에서 서버로의 다음 요청이 더 빨리 완료됩니다.

이러한 헤더의 예:

Connection: Keep-Alive

그러나 모든 클라이언트에 영구 연결이 필요한 경우 서버에서 문제가 시작됩니다. 서버를 사용할 수 없거나 자체적으로 연결을 닫기 시작합니다.

7.2 캐시 제어 헤더

Cache-Control 헤더는 콘텐츠 캐싱을 제어하는 ​​데 사용할 수 있습니다 . 적절하게 구성된 캐싱은 콘텐츠 작업 속도를 높이고 비뚤어진 캐싱은 갑자기 문제를 일으킵니다.

캐싱을 비활성화 하려면 다음 헤더를 작성해야 합니다.

Cache-Control: no-cache, no-store, must-revalidate

클라이언트 요청이나 서버 응답에서 캐시에 아무것도 저장하면 안 됩니다. 요청은 항상 서버로 전송되고 응답은 항상 완전히 다운로드됩니다.

가장 원시적이고 안정적인 유형의 캐싱을 활성화할 수도 있습니다 .

Cache-Control: no-cache

복사본을 제공하기 전에 캐시는 리소스가 최신인지 확인하기 위해 원본 서버에 쿼리합니다.

리소스 캐시 시간을 초 단위로 지정할 수 있습니다 . 제목은 다음과 같습니다.

Cache-Control: max-age=31536000

이 헤더는 콘텐츠의 최대 캐시 시간을 지정합니다.

여기에서 캐싱에 대한 자세한 내용을 읽을 수 있습니다 .

7.3 쿠키

서버는 클라이언트 측에 데이터를 저장할 수 있습니다 . 이러한 데이터를 쿠키 라고 합니다 . 그러나 클라이언트는 쿠키를 저장할 수도 있습니다. 그들은 양 당사자에게 매우 도움이 됩니다.

예를 들어 사이트로 이동하면 이미 해당 사이트에 대한 권한이 부여됩니다. 즉, 마지막으로 로그인했을 때 서버는 특정 사용자의 성공적인 로그인에 대한 정보를 저장하도록 브라우저에 명령했습니다.

요청에서 쿠키는 다음과 같이 표시됩니다.

Cookie: name=value;name2=value2;nameN=valueN00

쿠키는 일반적으로 브라우저에 저장되며 특정 도메인에 연결됩니다 . 동일한 도메인을 다시 방문하면 http 요청 및 http 응답에 쿠키가 자동으로 추가됩니다. 서버/도메인은 다른 서버/도메인이 브라우저에 저장한 쿠키를 수신할 수 없습니다.

각 쿠키에는 4개의 주요 매개변수가 있습니다.

  • 이름;
  • 의미;
  • 유효 기간(저장 기간)
  • 쿠키가 바인딩된 도메인.

쿠키는 텍스트 형식으로 저장 및 전송되므로 이름과 값이 모두 문자열입니다. 쿠키 만료 시간을 지정하지 않으면 브라우저를 닫은 후 파기됩니다.

7.4 세션

사용자가 사이트에 로그인한 후 사이트와 서버 간에 세션이 설정되었다고 말합니다.

HttpSession,서버는 인증된 클라이언트와 작업하는 데 필요한 모든 정보를 저장하는 특수 객체를 자체적으로 생성합니다 . 그리고 이 개체의 고유 번호는 쿠키 형태로 브라우저에 저장됩니다.

Java 웹 서버는 일반적으로 이름을 사용하여 JSESSIONID세션 ID를 저장합니다. 다음과 같이 보입니다.

Cookie: JSESSIONID =ABAD1D

서버 측에서는 세션의 수명과 브라우저가 닫힐 때 자동으로 닫힐지 여부를 설정할 수 있습니다.

코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION