Menu
CoddyTech

Tác nhân người dùng

Bài học 44 trên 47 trong khóa học Mạng máy tính với terminal của Coddy.

Mỗi yêu cầu cho biết chương trình nào gửi yêu cầu đó trong tiêu đề User-Agent. curl gửi tên và phiên bản của chính nó, còn trình duyệt gửi một chuỗi dài mang dấu ấn lịch sử.

Điều này quan trọng hơn vẻ bề ngoài. Máy chủ thường xuyên xử lý yêu cầu khác nhau tùy theo tiêu đề này: hiển thị giao diện dành cho thiết bị di động, chặn các ứng dụng khách lạ hoặc từ chối mọi thứ có vẻ như được tự động hóa. Vì vậy, câu “nó chạy được trong trình duyệt của mình nhưng không chạy được trong curl” thường là do chính tiêu đề này, chứ không có nguyên nhân sâu xa nào khác.

curl -s -A 'my-monitor/1.0' http://127.0.0.1:9133/

-A thiết lập giá trị này, và đây chỉ là cách viết tắt của -H 'User-Agent: ...'.

Nếu bạn gửi các yêu cầu tự động đến một dịch vụ, hãy đặt User-Agent trung thực, nêu tên công cụ của bạn. Đây là phép lịch sự: nếu lưu lượng truy cập của bạn gây ra vấn đề, người trực xử lý sự cố có thể biết đó là gì và cần hỏi ai.

challenge icon

Thử thách

Khó

Hãy giới thiệu bản thân một cách trung thực.

  1. Khởi động trình lắng nghe bắt gói trên cổng 9133
  2. Gửi yêu cầu với thông tin nhận dạng my-monitor/1.0
  3. In dòng user agent từ req.txt

Đầu ra dự kiến:

User-Agent: my-monitor/1.0

Tự làm thử

Terminal
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Mạng máy tính với terminal

Tự luyện tập: Playground Terminal