onlinetools.dev

ตัวแยกส่วน User-Agent

ระบุเบราว์เซอร์ เอนจิน ระบบปฏิบัติการ และอุปกรณ์จากสตริง User-Agent

ทำงานในเครื่อง
loading…
เกี่ยวกับเครื่องมือนี้

วางสตริง User-Agent จากบรรทัดล็อก รายงานบั๊ก หรือไฟล์ส่งออกจากระบบวิเคราะห์ แล้วรับผลถอดความ: เบราว์เซอร์และเวอร์ชัน เอนจินเรนเดอร์ ระบบปฏิบัติการ ชนิดอุปกรณ์ และสถาปัตยกรรมซีพียู ตัวแยกวิเคราะห์คือ ua-parser-js ไลบรารีเดียวกับที่อยู่เบื้องหลังสายงานวิเคราะห์นับไม่ถ้วน ซึ่งที่นี่ทำงานในเครื่องกับสตริงของคุณ

สตริง User-Agent เป็นแหล่งโบราณคดี — ทุกตัวยังอ้างว่าตนเป็น Mozilla/5.0, Chrome อ้างว่าเป็น Safari, Safari อ้างว่าเป็น KHTML และตัวตนที่แท้จริงซ่อนอยู่ในโทเคนท้าย ๆ ตัวแยกวิเคราะห์ชนะการเพ่งด้วยตาเปล่า: มันรู้ว่า “CriOS” หมายถึง Chrome บน iOS และรู้ว่า Edge ซ่อนอยู่หลัง “Edg/”

สังเกตทิศทางของกระแส: เบราว์เซอร์กำลังตรึงและลดทอนสตริง UA (และ Chromium ส่ง UA Client Hints มาแทน) รายละเอียดเวอร์ชันจากลำพัง UA จึงหยาบขึ้นเรื่อย ๆ สำหรับงานสืบสวนล็อกและคัดกรองบั๊ก มันยังขาดไม่ได้ ส่วนการตัดสินใจเรื่องความสามารถ ให้ใช้การตรวจสอบฟีเจอร์แทน

คำถามที่พบบ่อย

ทำไม User-Agent ทุกตัวขึ้นต้นด้วย Mozilla/5.0?
ละครความเข้ากันได้จากยุค 1990 ที่ไม่เคยจบ: เซิร์ฟเวอร์คอยดมหา “Mozilla” เพื่อจะส่งหน้าเว็บสมัยใหม่ให้ เบราว์เซอร์ใหม่ทุกตัวจึงอ้างว่าตนเป็นสิ่งนั้น และเบราว์เซอร์รุ่นต่อ ๆ มาก็สวมรอยเป็นรุ่นก่อนหน้า คำนำหน้านี้จึงเป็นเพียงธรรมเนียมที่ไร้ความหมายไปแล้ว
เชื่อเวอร์ชันระบบปฏิบัติการในสตริง UA ได้ไหม?
เชื่อได้น้อยลงทุกปี macOS ตรึงเวอร์ชันใน UA ไว้ที่ 10_15_7, Windows 11 รายงานตัวว่าเป็น Windows NT 10.0 และเบราว์เซอร์ที่ลดทอน UA ก็จงใจทำให้เวอร์ชันหยาบขึ้น ให้ถือว่าเวอร์ชันระบบปฏิบัติการจาก UA เป็นค่าโดยประมาณ และใช้ UA Client Hints ในที่ที่คุณควบคุมไคลเอนต์เองได้
“like Gecko” หรือ “KHTML, like Gecko” หมายถึงอะไร?
เป็นการสวมรอยอีกชั้น: WebKit สืบทอดมาจาก KHTML และต้องการให้หน้าเว็บที่เขียนเผื่อ Gecko (เอนจินของ Firefox) ทำงานได้ จึงเติม “like Gecko” เข้าไป เบราว์เซอร์ตระกูล WebKit/Blink ทุกตัวจึงพกวลีนี้ไว้จนถึงทุกวันนี้
ควรใช้การแยกวิเคราะห์ UA เพื่อตรวจสอบฟีเจอร์ไหม?
ไม่ควร — การดม UA จะพังทันทีที่เบราว์เซอร์ออกเวอร์ชันใหม่ ให้ตรวจสอบตัวฟีเจอร์เอง (if ("clipboard" in navigator)) การแยกวิเคราะห์ UA มีไว้สำหรับงานวิเคราะห์ การอ่านล็อก และการจำลองบั๊กที่ผู้ใช้รายงาน ซึ่งการรู้สภาพแวดล้อมคือหัวใจทั้งหมด
เครื่องมือที่เกี่ยวข้อง