웹 저장소는 하나 sessionStorage입니다, 하나는 로컬 스토리지이며, 사용자가 특별히 두 가지 유형으로 구분, 브라우저에서 데이터를 저장할 수 있습니다
클라이언트의 저장을 위해, 그들 사이의 차이가 그대로 다음과 유사한 심지어 초기 쿠키가 여전히 널리 사용되고있다 :
쿠키 | 로컬 스토리지 | sessionStorage | |
---|---|---|---|
서버와의 통신 | 각 요청에서 휴대 것 | 서버와 통신하지 않는다 | 서버와 통신하지 않는다 |
생명주기 데이터 | 만료 시간 효과 설정하기 전에 | 영구, 주도권하지 않는 한 제거하기 | 실제로 브라우저가 종료 될 때까지 |
범위 데이터 | 도메인 이름 및 하위 도메인을 설정 | 상동 모든 창 사이에 공유 | 다른 창 사이를 공유 할 수 없습니다 |
저장된 데이터의 크기 | 일반적으로 더 이상 4킬로바이트 이상 | 일반적으로 5메가바이트에 대한 | 일반적으로 5메가바이트에 대한 |
웹 스토리지 API는 상속 된 window
개체를 두 개의 새 속성을 제공 window.localStorage
하고window.sessionStorage
일반적인 속성과 방법은 다음과 같습니다 :
length
: 스트라이프 수를 저장setItem(key, value)
: 데이터 저장getItem(key)
: 지정된 데이터를 가져옵니다removeItem(ket)
: 지정된 데이터를 삭제clear()
: 모든 데이터를 삭제key(index)
: 인덱스 키를 가져옵니다
if (window.localStorage) {
var storage = window.localStorage
storage.setItem('username', 'admin')
storage.setItem('password', '12345')
let username = storage.getItem('username')
let password = storage.getItem('password')
console.log(username) // admin
console.log(password) // 12345
console.log(storage.length) // 2
storage.removeItem('password')
console.log(storage.length) // 1
storage.clear()
}
쿠키 및 세션의 지식을 추가 할 수있는 마지막 방법
우리는 HTTP 프로토콜이 발행 될 때마다 요청이 독립적이다,이 시간은 많은 불편의 원인이됩니다 수단 무 상태는,이다, 알고
예를 들어, 사용자는 자신이 다른 요청을 전송하기위한 서버가 여전히 사용자의 ID를 인식하지 못하는, 하나 개의 요청에 로그인 한 후
세션 쿠키 및 정보의 출현은 많은 시간은 사용자의 요청을 식별 할 수 있도록 사용자의 ID를 기록하는 것입니다
쿠키의 운영 메커니즘은 다음과 같습니다 :
- 에 의한 응답의 서버
set-cookie
머리는 브라우저의 쿠키 설정이 필요 - 브라우저가 쿠키의 사용을 지원하는 경우 응답을받은 후 브라우저는 다음 쿠키 파일에 저장됩니다
- 각 후속 브라우저 요청에 의해 요청합니다
cookie
테이프 헤드 쿠키 정보 - 서버가 요청을 수신 한 후, 따라 사용자의 쿠키 정보를 식별
다음과 같이 세션의 운영 메커니즘은 다음과 같습니다 :
서버는 브라우저 아이덴티티로 전송 한 다음의 고유 ID 및 보존이 ID 및 상응하는 세션 정보를 생성하고
세 가지 방법에서 세션 정보 저장 공통가 하나가 메모리에 저장되어, 하나의 파일에 저장됩니다, 하나는 데이터베이스에 저장됩니다
이 브라우저 식별 수령하면, 이후의 각 요청에 식별자가 나타납니다
일반적인 두 가지를 가지고 할 수있는 방법을 식별, 하나는 쿠키에 연결되어, 하나는 URL 매개 변수에 연결되어
서버는 해당 아이디를 찾는 사용자 세션을 식별하기 위해 식별 정보에 따라 상기 요청을 수신
브라우저의 쿠키에 저장된 데이터는 세션 데이터는 세션의 상대적으로 안전한 사용하므로, 서버에 저장
그러나, 서버에 저장된 너무 많은 세션 데이터는 서버의 성능에 영향을 줄 수 있습니다, 선택의 무게를하는 것이 필요하다
[자세히보기 HTML 문서의 시리즈, 봐 HTML 연구 노트 ]