×

Cách Sử Dụng Fetch API Để Quản Lý Cookie Trong JavaScript

Để tạo một request bằng JavaScript với việc lưu cookie cho cả phương thức POST và GET, bạn có thể sử dụng fetch API có sẵn trong hầu hết các trình duyệt hiện đại. fetch cho phép bạn thực hiện các request HTTP và cấu hình nhiều tùy chọn, bao gồm cả việc gửi và nhận cookie.

Lưu Cookie

Cookie thường được quản lý tự động bởi trình duyệt. Khi bạn gửi một request đến server và server trả về cookie trong response, trình duyệt sẽ tự động lưu cookie đó và gửi lại nó trong mỗi request tiếp theo đến cùng domain. Để đảm bảo cookie được gửi trong các request sử dụng fetch, bạn cần đặt tùy chọn credentials thành include.

GET Request

Đối với một GET request, bạn sẽ sử dụng fetch mà không cần cung cấp body trong tùy chọn:

fetch('https://example.com/data', {
    method: 'GET', // Phương thức GET
    credentials: 'include' // Đảm bảo cookie được gửi kèm theo request
})
.then(response => response.json()) // Giả sử response là JSON
.then(data => console.log(data)) // Xử lý dữ liệu nhận được
.catch(error => console.error('Lỗi:', error));

POST Request

Đối với một POST request, bạn sẽ cần cung cấp một body, cùng với đó là đặt Content-Type trong headers để chỉ định loại dữ liệu bạn đang gửi.

fetch('https://example.com/submit', {
    method: 'POST', // Phương thức POST
    credentials: 'include', // Đảm bảo cookie được gửi kèm theo request
    headers: {
        'Content-Type': 'application/json', // Định dạng dữ liệu là JSON
    },
    body: JSON.stringify({
        key: 'value' // Dữ liệu bạn muốn gửi
    })
})
.then(response => response.json()) // Giả sử response là JSON
.then(data => console.log(data)) // Xử lý dữ liệu nhận được
.catch(error => console.error('Lỗi:', error));

Những snippet code trên là cơ bản nhất để bạn có thể thực hiện GET và POST request trong JavaScript với việc lưu và sử dụng cookie. Hãy chú ý rằng việc xử lý cookie có thể khác nhau tùy vào chính sách của trang web bạn tương tác, cũng như các thiết lập bảo mật của trình duyệt.

Comments