Cookie trong HTTP
Cookie là một đoạn văn bản nhỏ, mà máy chủ có thể lưu trữ trong trình duyệt của người dùng. Máy chủ có thể thiết lập nhiều cookie với các tên khác nhau.
Thông qua cookie, máy chủ có thể nhận dạng người dùng và lưu trữ dữ liệu của từng client giữa các yêu cầu của nó.
Cookie được truyền giữa client và server thông qua các tiêu đề HTTP (hãy nhớ, điều này rất quan trọng). Mỗi khi trình duyệt gửi yêu cầu tới server, trình duyệt sẽ gửi tất cả cookie của trang web đó tới server.
Sử dụng tiêu đề Cookie, client
gửi cookie tới server trong mỗi
yêu cầu:
Cookie: name=john
Nếu có nhiều hơn một cookie được thiết lập, client sẽ gửi tất cả chúng trong một tiêu đề, phân tách chúng bằng dấu chấm phẩy:
Cookie: name=john;surn:smit
Sử dụng tiêu đề Set-Cookie, server
có thể thiết lập cookie với tên
và giá trị mong muốn:
Set-Cookie: name=john
Có đúng là cookie được truyền qua các tiêu đề HTTP không?
Cookie được lưu trữ ở đâu, trên server hay trong trình duyệt?
Server sử dụng tiêu đề nào để thiết lập cookie?
Trình duyệt sử dụng tiêu đề nào để gửi cookie tới server?
Trình duyệt gửi cookie tới server thường xuyên như thế nào?
Hãy mở một trang web bất kỳ và nghiên cứu các tiêu đề yêu cầu và phản hồi. Tìm kiếm các tiêu đề truyền cookie ở đó.
Trong công cụ gỡ lỗi của trình duyệt, trong tab "Network" hãy tìm yêu cầu của bạn. Nhấp vào nó. Trong chi tiết yêu cầu hiện ra, hãy tìm tab "Cookies". Nghiên cứu nó.
Trong công cụ gỡ lỗi của trình duyệt, trong tab "Application" hãy tìm tab "Cookies". Nghiên cứu các cookie được lưu trong trình duyệt của bạn cho trang web này. Thử thay đổi và xóa từng cookie riêng lẻ (cẩn thận, có thể làm hỏng xác thực; hãy đảm bảo bạn có mật khẩu cho trang web này).