Bài 32: Header Request và Header Response

Khi thao tác với các website thì chúng ta có hai hành động, thứ nhất đó là gửi yêu cầu lên server và ta gọi là request, hành động thứ ha là server gửi trả kết quả về cho client và ta gọi là response. Mỗi hành động như vậy sẽ kèm các thông số kèm theo và các thông số đó ta gọi là Header ParametersTrình duyệt và server sẽ dựa vào các thông số header này để trả dữ liệu và hiển thị dữ liệu cho phù hợp, vì vậy nó đóng vai trò khá là quan trọng đấy.

Note: Để xem các tham số đó bằng mắt thường thì bạn hãy sử dụng Firebug của Chrome nhé, nó nằm ở tab Network.

1. Header Request Parameters

Header request parameters là các thông số kèm theo khi gửi yêu cầu lên server

Bạn dễ dàng nhập thấy các thông số thường gặp như Host, User-Agent, Cookie, ... đấy là các tham số mặc định tự sinh ra bởi trình duyệt và bạn không thể thay đổi giá trị cho chúng, trừ khi bạn sử dụng CURL để tạo một request giả. 

Trước đây mình thắc mắc tại sao Cookie được lưu ở trình duyệt client mà server có thể đọc được, kể từ ngày tìm hiểu về các tham số Header này mới hiểu là khi gửi request trình duyệt đã đính kèm thêm tham số này ở header.

2. Header Response Parameters

Header response parameters là các thông số kèm theo khi server gửi kết quả về cho client.

Các thông số thường thấy như Server, Last-Modiffied, Content-Type, Content-Length, Content-Encoding ... Các thông số này ta có thể sử dụng htaccess hoặc hàm header trong PHP để can thiệp bổ sung hoặc thay đổi giá trị.

Ví dụ: Thay đổi định dạng Content-Type trả về là một hình ảnh PNG chứ không phải là text/plain, bạn sẽ đặt đoạn code sau ở đầu file PHP.

header('Content-Type: image/png');

3. Lời kết

Mỗi tham số mặc định sẽ có một nhiệm vụ cụ thể nên nếu thấy cần thiết thì bạn mới thay đổi giá trị cho nó, còn bình thường thì không cần thiết. Ví dụ như ở hình ảnh Header Response có tham số Content-Encoding = gzip là do mình đã sử dụng file .htaccess để nén trước khi gửi về client.

Ok bài này mang tính chất giới thiệu thôi, bạn chỉ cần hiểu trong các request sẽ có các tham số header kèm theo là được, sau này khi học nâng cao lên các Framework như NodeJS, CURL hoặc viết các web service thì bạn sẽ đụng tới nó khá nhiều.web

Hãy để lại link bài viết gốc khi chia sẻ bài viết này, mình sẽ report DMCA với những website lấy nội dung mà không để nguồn hoặc copy bài với số lượng lớn.

Nguồn: freetuts.net

Profile photo of adminTheHalfHeart

TheHalfHeart

Có sở thích viết tuts nên đã từng tham gia viết ở một số diễn đàn, đến năm 2014 mới có điều kiện sáng lập ra freetuts.net. Sinh năm 90 và có 1 vợ 2 con, thích ca hát và lập trình.

ĐĂNG BÌNH LUẬN: Đăng câu hỏi trên Group Facebook để được hỗ trợ nhanh nhất.