ตัวแยกวิเคราะห์ URL
ตัวแยกวิเคราะห์ URL เป็นเครื่องมือฟรีที่แยกที่อยู่เว็บออกเป็นสคีมา พาธ และสตริงการค้นหา
ตัวแยกวิเคราะห์ URL ดึงข้อมูลอะไรออกมาบ้าง?
ตัวแยกวิเคราะห์ URL จะระบุส่วนประกอบเชิงโครงสร้างของที่อยู่เว็บ โดยไม่ต้องแยกข้อความด้วยตัวเอง เครื่องมือนี้จะแสดงผลลัพธ์ 3 ช่องจากฟังก์ชัน parse_url ของ PHP
- Scheme ระบุโปรโตคอลหรือรูปแบบการกำหนดที่อยู่ เช่น https หรือ http
- Path ระบุส่วนพาธ เช่น /account/orders/42
- คิวรี แสดงข้อความหลังเครื่องหมายคำถามที่ใช้เริ่มส่วนการค้นหา และก่อนเครื่องหมายแฮชที่ไม่ได้เข้ารหัส เช่น page=2&sort=date
การแยกวิเคราะห์มีประโยชน์เมื่อตรวจสอบคำขอ API, URL เรียกกลับ, บันทึกของแอปพลิเคชัน หรือข้อมูลจากบุคคลที่สาม คุณจะแยกข้อมูลการกำหนดเส้นทางออกจากพารามิเตอร์การค้นหาได้ก่อนเริ่มแก้ไขข้อผิดพลาด บันทึกข้อมูล หรือแปลงที่อยู่
ผลลัพธ์จะไม่มีช่องแยกสำหรับชื่อโฮสต์ พอร์ต หรือแฟรกเมนต์ หากต้องการส่วนประกอบเหล่านี้ ให้ใช้ไลบรารีแยกวิเคราะห์ URL ที่รองรับรายละเอียดครบถ้วนกว่าในแอปพลิเคชันของคุณ
ใช้ตัวแยกวิเคราะห์ URL อย่างไร?
ป้อน URL แบบเต็มหรือบางส่วน แล้วตรวจสอบค่าสคีมา พาธ และการค้นหาที่เครื่องมือแสดง URL แบบสัมบูรณ์ที่ครบถ้วนมักให้ผลลัพธ์ชัดเจนที่สุด เพราะระบุสคีมาไว้อย่างชัดเจน
- คัดลอก URL จากเบราว์เซอร์ การตอบกลับของ API ระเบียนเว็บฮุก หรือบันทึกของเซิร์ฟเวอร์
- ใส่สตริงการค้นหาด้วย หากต้องการตรวจสอบชื่อหรือค่าของพารามิเตอร์
- เปรียบเทียบพาธในผลลัพธ์กับเส้นทางที่แอปพลิเคชันควรใช้
- ตรวจสอบว่ามีสคีมาและการค้นหาครบตามที่การเชื่อมต่อระบบของคุณต้องการหรือไม่
การประมวลผลเกิดขึ้นบนเซิร์ฟเวอร์ ข้อมูลที่ป้อนจะส่งไปยังเซิร์ฟเวอร์ผ่าน HTTPS และไม่มีการจัดเก็บ อย่างไรก็ตาม หากใช้ตัวอย่างที่ปกปิดข้อมูลแล้วตอบคำถามเดียวกันได้ ก็ควรหลีกเลี่ยงการส่งโทเค็นเข้าถึงที่ยังใช้งานได้ ลิงก์ดาวน์โหลดที่ลงนาม ตัวระบุเซสชัน หรือข้อมูลรับรองอื่นๆ
ตัวอย่างการใช้งานและวิธีอ่านผลลัพธ์
สำหรับ URL ของ API แบบสัมบูรณ์ เครื่องมือจะแยกโปรโตคอลออกจากเส้นทางและสตริงการค้นหาแบบดิบ
ข้อมูลที่ป้อน https://api.example.co.uk/v1/orders/42?expand=items¤cy=GBP
Scheme https
Path /v1/orders/42
Query expand=items¤cy=GBP
การค้นหาจะถูกส่งกลับมาเป็นส่วนประกอบเดียว ตามรูปแบบทั่วไปของฟอร์มและสตริงการค้นหา เครื่องหมายแอมเพอร์แซนด์ใช้คั่นแต่ละฟิลด์ ส่วนเครื่องหมายเท่ากับตัวแรกในแต่ละฟิลด์ใช้แยกชื่อออกจากค่า การแยกวิเคราะห์ URL เพียงอย่างเดียวไม่ได้ยืนยันว่า expand หรือ currency เป็นพารามิเตอร์ที่ API รองรับ
การอ้างอิงแบบสัมพัทธ์ก็มีพาธและการค้นหาได้โดยไม่ต้องระบุสคีมา
ข้อมูลที่ป้อน /search?q=red%20shoes&page=2
Scheme no scheme component
Path /search
Query q=red%20shoes&page=2
ลิงก์ที่สร้างขึ้นเพื่อใช้ภายในเว็บไซต์เดียวกันมักไม่มีสคีมา ซึ่งถือเป็นเรื่องปกติ แต่หากข้อมูลควรมี URL เรียกกลับแบบสัมบูรณ์ ผลลัพธ์เช่นนี้อาจบ่งชี้ว่าคำนำหน้า https:// หายไป
เครื่องมือนี้ไม่ใช่เครื่องมือตรวจสอบความถูกต้องของ URL แต่ช่วยให้เห็นโครงสร้างที่น่าสงสัยได้ เช่น ไม่มีสคีมา พาธไม่ตรงตามที่คาด หรือข้อความการค้นหาอยู่ผิดตำแหน่ง อย่างไรก็ตาม ผลการแยกวิเคราะห์ไม่ได้พิสูจน์ว่าที่อยู่นั้นมีอยู่จริง แปลงชื่อผ่าน DNS ได้ หรือส่งกลับการตอบสนอง HTTP ที่สำเร็จ
จะเกิดอะไรขึ้นเมื่อมีช่องว่าง เครื่องหมายวรรคตอน หรือข้อมูลที่ไม่ปกติ?
อักขระสงวนมีผลต่อการแบ่งส่วน URL ส่วนอักขระที่เข้ารหัสแล้วโดยทั่วไปจะยังอยู่ในส่วนประกอบเดิม เครื่องมือนี้จะแยกส่วนประกอบเท่านั้น โดยไม่ถอดรหัสหรือปรับเนื้อหาภายในให้เป็นรูปแบบมาตรฐาน
- เครื่องหมายคำถามที่ไม่ได้เข้ารหัสจะเริ่มส่วนการค้นหา หากต้องการใช้เครื่องหมายคำถามเป็นข้อมูลจริงนอกส่วนการค้นหาที่มีอยู่ ควรเข้ารหัสแบบเปอร์เซ็นต์เมื่อเครื่องหมายนั้นอาจถูกตีความเป็นตัวคั่นการค้นหา
- โดยทั่วไปเครื่องหมายแอมเพอร์แซนด์ใช้คั่นพารามิเตอร์การค้นหา แต่เครื่องมือนี้จะส่งกลับสตริงการค้นหาทั้งหมด ไม่ได้ตีความแยกทีละพารามิเตอร์
- ตามไวยากรณ์ URL มาตรฐาน เครื่องหมายแฮช (#) ที่ไม่ได้เข้ารหัสคือตัวคั่นแฟรกเมนต์ และข้อมูลแฟรกเมนต์ไม่ใช่หนึ่งในช่องผลลัพธ์ของเครื่องมือนี้
- ตามปกติควรเข้ารหัสช่องว่าง ซึ่งมักใช้รูปแบบ %20 เครื่องหมายบวกอาจแทนช่องว่างในข้อมูลการค้นหาที่เข้ารหัสแบบฟอร์ม แต่การตีความดังกล่าวเป็นหน้าที่ของการถอดรหัสการค้นหา ไม่ใช่การแยกวิเคราะห์ URL
- ข้อความในพาธหรือการค้นหาที่มีอักขระเน้นเสียงหรืออักขระที่ไม่ใช่ละติน ควรใช้การเข้ารหัสแบบเปอร์เซ็นต์ด้วย UTF-8 เมื่อระบบปลายทางกำหนด ชื่อโดเมนสากลใช้รูปแบบที่เข้ากันได้กับ ASCII เพื่อให้รองรับโปรโตคอลได้อย่างกว้างขวาง
- ตัวเลขไม่มีลักษณะการแยกวิเคราะห์เป็นพิเศษ และจะยังคงเป็นอักขระทั่วไปภายในพาธหรือค่าการค้นหา
ข้อมูลที่ป้อนว่างเปล่าไม่มีโครงสร้าง URL ที่เป็นประโยชน์ให้ตรวจสอบ ส่วน URL ที่ยาวมากอาจติดข้อจำกัดของระบบอื่น เช่น เบราว์เซอร์ เว็บเซิร์ฟเวอร์ พร็อกซี และเฟรมเวิร์กของแอปพลิเคชัน เครื่องมือนี้ไม่ได้ใช้ยืนยันว่าระบบอื่นจะยอมรับ URL ที่มีความยาวหนึ่งๆ หรือไม่
ควรแยกวิเคราะห์ URL เมื่อใด?
ควรแยกวิเคราะห์ URL เมื่อต้องวินิจฉัยโครงสร้างของที่อยู่ก่อนที่โค้ดหรือโครงสร้างพื้นฐานจะนำไปใช้งาน กรณีทั่วไป ได้แก่ การตรวจสอบที่อยู่เรียกกลับของเว็บฮุกก่อนนำระบบขึ้นใช้งาน การตรวจสอบปลายทางการเปลี่ยนเส้นทาง การแยกเส้นทาง API ออกจากตัวกรอง และการอ่าน URL ที่คัดลอกมาจากบันทึกของรีเวิร์สพร็อกซี
โดยทั่วไปไม่จำเป็นต้องแยกวิเคราะห์ หากมีเพียงระบบที่จะใช้ URL ที่ทราบโครงสร้างอยู่แล้ว และแอปพลิเคชันของคุณมีไลบรารี URL อยู่ก่อน นอกจากนี้ การแยกวิเคราะห์ยังไม่ใช่วิธีที่เหมาะสมหากต้องการทดสอบว่า URL ใช้งานได้หรือไม่ ติดตามการเปลี่ยนเส้นทาง ถอดรหัสพารามิเตอร์การค้นหาทั้งหมด หรือตรวจสอบว่าโดเมนน่าเชื่อถือหรือไม่
สำหรับงานที่ทำซ้ำหรือทำแบบอัตโนมัติ ให้ใช้ความสามารถด้าน URL ที่มีมาในสภาพแวดล้อมของคุณ PHP มี parse_url, JavaScript ในเบราว์เซอร์มีอินเทอร์เฟซ URL, Node.js มีคลาส URL และ Python มี urllib.parse หากต้องประมวลผลไฟล์บันทึกที่มีที่อยู่หลายพันรายการ สคริปต์บรรทัดคำสั่งขนาดเล็กจะเหมาะกว่าการแยกวิเคราะห์ด้วยตนเอง
อย่าแยกวิเคราะห์เพียงเพื่อจัดรูปแบบ URL ใหม่ หาก URL นั้นมีรูปแบบตรงตามที่ระบบปลายทางต้องการอยู่แล้ว การเข้ารหัสหรือสร้างที่อยู่ขึ้นใหม่โดยไม่มีเหตุผลชัดเจนอาจทำให้ลายเซ็นการค้นหา พารามิเตอร์ซ้ำ หรืออักขระสงวนเปลี่ยนไป
คำถามที่พบบ่อย
แยกวิเคราะห์ URL ที่ไม่มี http หรือ https ได้ไหม?
ได้ ฟังก์ชัน parse_url ของ PHP สามารถตีความการอ้างอิงแบบสัมพัทธ์และ URL บางส่วนได้ แต่จะไม่มีค่าสคีมาหากไม่ได้ระบุไว้ตั้งแต่แรก โปรดระวังที่อยู่แบบอิงสคีมาซึ่งขึ้นต้นด้วยเครื่องหมายทับสองตัว เพราะความหมายจะขึ้นอยู่กับเอกสารหรือแอปพลิเคชันที่ใช้ที่อยู่นั้น
พารามิเตอร์การค้นหาที่มีชื่อซ้ำจะยังอยู่ครบไหม?
การค้นหาจะถูกส่งกลับมาเป็นส่วนประกอบแบบดิบ ชื่อที่ซ้ำจึงยังคงอยู่ตามลำดับเดิมได้ ส่วนค่าอย่าง tag=red&tag=blue จะถูกแปลงเป็นอาร์เรย์หรือค่าแยกรายการอย่างไร ขึ้นอยู่กับตัวแยกวิเคราะห์สตริงการค้นหาที่นำมาใช้ในภายหลัง
วาง URL ที่ลงนามไว้ในเครื่องมือนี้ปลอดภัยไหม?
ข้อมูลที่ป้อนจะส่งผ่าน HTTPS และไม่มีการจัดเก็บ แต่ URL ที่ลงนามอาจยังใช้เข้าถึงเนื้อหาส่วนตัวได้ตราบใดที่ลายเซ็นยังมีผล เมื่อไม่จำเป็นต้องใช้ข้อมูลรับรองจริง ให้ปกปิดโทเค็นหรือแทนชื่อโฮสต์และค่าต่างๆ ด้วยตัวอย่างที่สื่อความหมายเดียวกัน
ทำไม URL ที่ดูถูกต้องจึงทำงานต่างออกไปในแอปพลิเคชัน?
ความแตกต่างอาจเกิดจากวิธีถอดรหัสการค้นหาและการปรับ Unicode ให้เป็นรูปแบบมาตรฐานที่แต่ละเฟรมเวิร์กใช้ แอปพลิเคชันอาจใช้กฎเพิ่มเติมหลังแยกวิเคราะห์ด้วย เช่น รายการชื่อโฮสต์ที่อนุญาตและข้อจำกัดในการเปลี่ยนเส้นทาง ให้เปรียบเทียบข้อมูลดิบของ URL แบบไบต์ต่อไบต์ จากนั้นตรวจสอบว่าแอปพลิเคชันถอดรหัสหรือเขียนส่วนใดใหม่ก่อนส่งคำขอ
เครื่องมือยอดนิยม
สร้างลายเซ็นแบบกำหนดเองของคุณได้อย่างง่ายดายและดาวน์โหลดได้อย่างสะดวก
ใช้เครื่องมือ ping ของเราเพื่อตรวจสอบสถานะและเวลาตอบสนองของเว็บไซต์ เซิร์ฟเวอร์ หรือพอร์ตใด ๆ ได้อย่างรวดเร็วและมีประสิทธิภาพ
เครื่องมือค้นหา IP ของ Digily Link ให้ข้อมูลโดยละเอียดเกี่ยวกับที่อยู่ IP ใด ๆ ใช้บริการออนไลน์ฟรีนี้เพื่อดูข้อมูล IP อย่างครบถ้วน
สร้างลิงก์ WhatsApp ฟรีได้ทันทีด้วยเครื่องมือสร้างลิงก์ WhatsApp ของเรา เพิ่มข้อความที่กำหนดเองและเริ่มแชทได้ในคลิกเดียว โดยไม่ต้องเข้าสู่ระบบหรือเขียนโค้ด