Bổ sung
Host Header
HTTP/1.1 - Bắt buộc phải có Host Header
Host Header là bắt buộc trong tất cả các HTTP/1.1 request messages. Nếu một request HTTP/1.1 thiếu Host header hoặc có nhiều hơn một Host header, server sẽ trả về lỗi 400 Bad Request.
GET /index.html HTTP/1.1
Host: example.comHTTP/1.0 - Host Header không bắt buộc
Với HTTP/1.0, Host Header không phải là bắt buộc. Một request đơn giản như sau vẫn hoàn toàn hợp lệ:
GET /index.html HTTP/1.0Tuy nhiên, việc thiếu Host header trong HTTP/1.0 có thể dẫn đến kết quả không mong muốn nếu server đích là một virtual host không có địa chỉ IP riêng
Host Header được tạo ra chủ yếu để giải quyết vấn đề thiếu hụt địa chỉ IPv4 và hỗ trợ virtual hosting - cho phép nhiều website được lưu trữ trên cùng một địa chỉ IP
Base64 usecase
Sử dụng trong Authentication/Cookie Header (Mã hóa token, value)
Sử dụng để gửi dữ liệu như hình ảnh, file để gửi qua HTTP request (vì không phải lúc nào byte đó cũng có thể hiển thị được --> encode với Base64)
Sử dụng để embed hình ảnh trong source code HTML/CSS
Debug request
Là hành động modify request, test từng request bằng DevTools.
Đầu tiên DevTools trông như sau:

Trong đó ta có
Open in Sources panel: Đối với các request load các file script và file svg, ...
Open in new tab: Request lại endpoint đó trong tab mới của browser
Copy: Hiển thị submenu với nhiều tùy chọn sao chép như:
Copy URL
Copy as cURL command
Copy request headers
Copy response
Copy as Fetch/Node.js code
Replay XHR: Gửi lại yêu cầu XHR/AJAX với cùng tham số. (Ưu tiên sử dụng trong Debug API calls vì có thể test lại request mà không cần reload trang.
Block request URL: Chặn hoàn toàn URL cụ thể này khỏi việc được tải. Giúp test xem ứng dụng hoạt động như thế nào khi một resource bị thiếu hoặc lỗi.
Block request domain: Chặn toàn bộ domain của request này. Hữu ích để test scenario khi một service bên thứ ba không khả dụng.
Override headers: Ghi đè headers của request với giá trị tùy chỉnh. Điều này cho phép test API với các header khác nhau mà không cần thay đổi code.
Override content: Ghi đè nội dung phản hồi từ server với dữ liệu tùy chỉnh. Rất hữu ích để test frontend với các scenario dữ liệu khác nhau.
Ta có 2 options đó là Replay XHR và Copy as Fetch/Node.js code được sử dụng để debug từng request 1 và quan sát chúng có hiện tượng gì bất thường.
Hoặc là để giải mã các request bị mã hóa:

Last updated
Was this helpful?

