DANH MỤC TÀI LIỆU
Bạn đã hiểu rõ về HTTP Cookie?
B n đã hi u rõ v HTTP Cookie? ể ề
Cookie là nh ng ph n d li u đ c web server g i vào l n đ u tiên trình ầ ữ ệ ượ ầ ầ
duy t truy c p website ho c khi không tìm th y trong request c a trình ệ ậ
duy t g i lên. Sau đó cookie đ c l u l i trên máy ng i dùng b i trình ượ ư ườ
duy t và s đ c trình duy t g i l i server theo m i request theo header. ẽ ượ
M c dù cookie th ng đ c set b i trình duy t nh ng nó cũng có th đ c ườ ượ ư ể ưọ
t o ra/thao tác b i Client b ng vi c s d ng Javascript. Tuy v y, n u các ử ụ ế
cookies đ c g nượ HttpOnly thì ch server có quy n thao tác đ n các cookies ề ế
này.
Kh i t o cookieở ạ
Khi ng i dùng truy c p vào trang web l n đ u tiên, header mà trình duy t ườ ầ ầ
g i lên s có d ng sau: ẽ ạ
GET /index.html HTTP/1.1
Host: www.example.org
Đ ng th i, lúc này server không tìm th y cookie trên request ng i dùng, ồ ờ ườ
chính vì v y nó s kh i t o cookie b ng cách g i l i header nh sau: ở ạ ử ạ ư
HTTP/1.0 200 OK
Content-type: text/html
Set-Cookie: theme=light
Set-Cookie: sessionToken=abc123; Expires=Wed, 09 Jun 2021 10:18:14
GMT
Set-Cookie: status=active; Max-Age: 300
Set-Cookie: name=tien; Expires=Wed, 09 Jun 2021 10:18:14 GMT; Max-
Age: 300
Có th th y có 2 cookie đ c t o ra: ượ ạ
Cookie theme không có Expires, có nghĩa là nó s b m t sau khi đóngẽ ị
trình duy t.
Cookie sessionToken có thêm Expires, có nghĩa là nó s ch b m t ỉ ị
khi h t th i gian ho c b xóa b i ng i dùng.ế ặ ị ơ ư
Cookie status có tr ngườ Max-Age, có nghĩa là cookie s b m t sau: ẽ ị
300 giây.
Trong tr ng h p cườ ợ ả ExpireMax-Age đ u có trong cookie
thì Max-Age s đ c u tiên h n. ượ ư ơ
Cách server ti p nh n cookieế ậ
Sau khi cookie đ c kh i t o trên trình duy t ng i dùng, các request khác ượ ở ạ ườ
c a ng i dùng lên server s header d ng nh sau:ủ ườ ư
GET /spec.html HTTP/1.1
Host: www.example.org
Cookie: theme=light; sessionToken=abc123
Khi cookie đ c t o ra không ch có key/value, nó còn có thêm 1 vài giá tr ượ ạ
n a: Domain, Path, Expires,... Tuy nhiên nó không đ c trình duy t g i l i ượ ử ạ
cho server mà ch key và value đ c g i l i. ượ ử ạ
Domain và Path
2 giá tr này dùng đ nói cho trình duy t bi t n i cookie thu c v . Vì lý do ế ơ
b o m t nên cookie ch đ c set domain là domain hi n t i mà trình duy t ỉ ượ
truy c p.
Nhìn vào cookie đ c server g i cho trình duy t d i đây:ượ ệ ướ
HTTP/1.0 200 OK
Set-Cookie: LSID=DQAAAK…Eaem_vYg; Path=/accounts; Expires=Wed,
13 Jan 2021 22:23:01 GMT; Secure; HttpOnly
Set-Cookie: HSID=AYQEVn…DKrdst; Domain=.foo.com; Path=/;
Expires=Wed, 13 Jan 2021 22:23:01 GMT; HttpOnly
Set-Cookie: SSID=Ap4P…GTEq; Domain=foo.com; Path=/; Expires=Wed,
13 Jan 2021 22:23:01 GMT; Secure; HttpOnly
V i dòng đ u tiên có cookieớ ầ LSID, ta có th th y r ng:ể ấ
Không có tr ngườ Domain, tr ngườ Path=/accounts. Đi u này có nghĩa
Domain s t đ c l y t requestẽ ự ượ
Dòng th 2 và dòng th 3 ứ ứ
có Domain=.foo.com hay Domain=foo.com và có cùng Path=/. Đi u
này có nghĩa là domain foo.com hay b t c sub-domain nào ấ ứ
d ng: sub.foo.com hay tien.foo.com đ u có quy n thao tác đ n cookieề ề ế
này.
Expire và Max-Age
HTTP/1.0 200 OK
Content-type: text/html
Set-Cookie: theme=light
Set-Cookie: sessionToken=abc123; Expires=Wed, 09 Jun 2021 10:18:14
GMT
Có th th y có 2 cookie đ c t o ra: ượ ạ
Cookie theme không có Expires, chính vì v y nó s b m t sau khi ẽ ị
đóng trình duy t.
Cookie sessionToken có thêm Expires,chính vì v y nó s ch b m t ỉ ị
khi h t th i gian ho c b xóa b i ng i dùng.ế ặ ị ơ ư
Secure and HttpOnly
Hai tr ngườ Secure hay HttpOnly đ u không có giá tr xác đ nh, nó đ c ị ị ượ
cho vào cookie đ c nh n cookie có s d ng nó hay không. ử ụ
Secure có tác d ng làm cho trình duy t ph i s d ng k t ử ụ ế
n i secure/encrypted t c là k t n i b o m t, đ c mã hóa. Tuy v y, ế ố ả ượ
nó ch ho t đ ng khi server có s d ng SSL(HTTPs). Tuy v y, không ử ụ
nên truy n các thông tin b o m t b ng Cookie vì c ch này v n dĩ ậ ằ ơ ế
không an toàn và k c ể ả Secure đi chăng n a thì ko có nghĩa là
thông tin nào cũng đ c mã hóa ho c không th truy c p b i bên th ượ ậ ở
3.
HttpOnly có tác d ng làm cho cookie ch đ c thao tác b i server mà ỉ ượ
không b thao tác b i các script phía ng i dùng.ị ở ườ
thông tin tài liệu
Cookie là những phần dữ liệu được web server gửi vào lần đầu tiên trình duyệt truy cập website hoặc khi không tìm thấy trong request của trình duyệt gửi lên. Sau đó cookie được lưu lại trên máy người dùng bởi trình duyệt và sẽ được trình duyệt gửi lại server theo mọi request theo header.
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×