Thay đổi tác nhân người dùng bằng curl để lấy mã nguồn URL dưới dạng trình duyệt OS & khác
Sử dụng curl, chúng tôi có thể truy xuất mã nguồn HTML & CSS của bất kỳ URL được chỉ định nào và thậm chí cả thông tin tiêu đề http, nhưng một số trang web cung cấp nội dung hoặc HTML hoàn toàn khác cho các phiên bản trình duyệt và hệ điều hành khác nhau, điều này được thực hiện bằng cách phát hiện tác nhân người dùng của họ. Do đó, chúng tôi có thể giả mạo tác nhân người dùng của một phiên bản trình duyệt và hệ điều hành khác và điều này cho phép các nhà phát triển web nhanh chóng truy cập vào các biến thể thay thế đó của mã nguồn trang web.Đối với các mục đích ở đây, chúng tôi sẽ đạt được điều này từ dòng lệnh bằng cách sử dụng curl. Cú pháp cơ bản để giả mạo tác nhân người dùng bằng lệnh curl như sau:
curl -A UserAgentString>"
Tất nhiên, bạn sẽ thay thế UserAgentString bằng một chuỗi tác nhân người dùng hợp pháp phù hợp với trình duyệt mà bạn muốn bắt chước.
Hãy xem một vài ví dụ với các chuỗi tác nhân người dùng khác nhau.
Một trong những tình huống phổ biến nhất của HTML và CSS nguồn khác nhau là đối với các trang web có phiên bản dành cho thiết bị di động bị rút gọn, bạn có thể truy xuất mã nguồn dành riêng cho iPhone bằng:
"curl -A Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko ) Phiên bản/5.0.2 Di động/8J2 Safari/6533.18.5 http://www.apple.com"
Một số trang web cũng làm điều này với các trình duyệt khác. Đây sẽ là Chrome 12 trong Mac OS X 10.6.8: curl -A Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, như Gecko) Chrome/12.0.742.112 Safari/534.30 http://microsoft.com"
Đây là một ứng dụng khác giả mạo Mac App Store và Mac OS X 10.6.7 dưới dạng tác nhân người dùng và rất hữu ích để truy vấn App Store từ một tập lệnh (thêm về điều đó trên TUAW):
"curl -silent -A iMacAppStore/1.0.1 (Macintosh; U; Intel Mac OS X 10.6.7; vi) AppleWebKit/533.20.25 http:// ax.search.itunes.apple.com/"
Còn một người khác giả mạo Windows XP bằng Firefox 3:
"curl -A Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 http:/ /yahoo.com"
Bạn có thể tìm chuỗi tác nhân người dùng trên khắp trang web, chỉ cần đảm bảo đưa chúng vào dấu ngoặc kép nếu bạn muốn truy xuất nguồn trang web làm tác nhân người dùng đó. Nếu bạn muốn tìm hiểu về tác nhân người dùng, Wikipedia có một mục hay về chủ đề này.
Lưu ý: Điều này được thực hiện có chủ ý thông qua dòng lệnh và nhằm vào những người thích làm việc từ Terminal, nhưng có rất nhiều các cách để thực hiện việc này thông qua các ứng dụng đồ họa và trình duyệt web tiêu chuẩn như Safari, Chrome và Firefox.Safari có lẽ là đơn giản nhất vì bạn có thể đặt các tác nhân người dùng khác nhau trực tiếp từ menu Nhà phát triển:
Ảnh chụp màn hình này được lấy từ một bài viết về cách giúp cuộc gọi Trò chuyện video trên Facebook hoạt động trong OS X Lion, điều này được thực hiện bằng cách thay đổi tác nhân người dùng trình duyệt thành phiên bản mà Facebook cho là tương thích.