ตัวแยกวิเคราะห์ URL
ตัวแยกวิเคราะห์ URL
แยก URL แบบลำดับชั้นที่พบบ่อย (เช่น https://example.com/path) ออกเป็นฟิลด์แบบมีโครงสร้าง เช่น โปรโตคอล โฮสต์ พอร์ต และพาธ แก้ไขพารามิเตอร์คิวรีได้ทีละรายการ และพรีวิว URL ที่ประกอบแล้วแบบเรียลไทม์ เหมาะสำหรับดีบัก API วิเคราะห์ลิงก์ และปรับแต่งพารามิเตอร์
🚀 เริ่มต้นอย่างรวดเร็ว
- วางหรือพิมพ์ URL (หรือพาธแบบสัมพัทธ์) ในช่องป้อนข้อมูล แล้วเครื่องมือจะพยายามแยกวิเคราะห์ให้อัตโนมัติ
- ในส่วน "รายละเอียดโครงสร้าง" คุณสามารถแก้ไขโปรโตคอล โฮสต์ พอร์ต พาธ และแฟรกเมนต์ได้ทีละรายการ
- ในส่วน "พารามิเตอร์คิวรี" เพิ่ม ลบ หรือแก้ไขคู่คีย์-ค่าได้
- ส่วน "URL ผลลัพธ์" จะอัปเดตแบบเรียลไทม์และคัดลอกได้ด้วยคลิกเดียว
- เปิด "เพิ่ม https:// อัตโนมัติเมื่อไม่มีสคีม" เพื่อเติม https:// ให้ URL ที่ไม่มีโปรโตคอล
📌 สถานการณ์การใช้งานทั่วไป
- ดีบัก API: แยก URL ของ endpoint ตรวจสอบ/แก้ไขพารามิเตอร์คิวรี และหาปัญหาการส่งพารามิเตอร์ได้เร็วขึ้น
- วิเคราะห์ลิงก์: แยกลิงก์การตลาด/ติดตามที่ซับซ้อน เพื่อตรวจสอบ UTM, referrer และข้อมูลอื่น ๆ
- ปรับพารามิเตอร์: เพิ่ม/ลบ/แก้ไขการแบ่งหน้า การกรอง การเรียงลำดับ และคิวรีอื่น ๆ ได้รวดเร็วขึ้น โดยลดการต่อ URL ด้วยมือ
- ล้างลิงก์: ลบพารามิเตอร์ติดตามที่ไม่จำเป็นก่อนแชร์ URL ที่สะอาดขึ้น
- ตรวจสอบรีไดเรกต์: แยก URL เปลี่ยนเส้นทาง แล้วตรวจสอบ host, port และ path ปลายทางว่าถูกต้องหรือไม่
- สร้าง Deep Link: ประกอบ deep link ของแอป (รวม custom scheme) พร้อมพรีวิว URL แบบทันที
🧭 คำแนะนำการใช้งาน
- เมื่ออินพุตไม่มีสคีมและดูเหมือนโดเมนหรือ host:port แนะนำให้เปิด "เพิ่ม https:// อัตโนมัติ" ไว้ หากต้องการทดสอบสคีมเฉพาะ ให้พิมพ์คำนำหน้าสคีมแบบเต็มโดยตรง
- ค่าพารามิเตอร์คิวรีจะถูก URL encode/decode ให้อัตโนมัติ โดยปกติพิมพ์ข้อความปกติได้เลย
- หาก search ว่าง และส่วนหลัง # มี ? เครื่องมือจะตีความเป็นพารามิเตอร์คิวรีใน hash
- รองรับพาธแบบ relative เช่น /api/users?page=2 โดยโหมดนี้ protocol และ host จะว่าง
- หลังแก้ไขเสร็จ ให้คัดลอกจาก "URL ผลลัพธ์" โดยตรงเพื่อเลี่ยงข้อผิดพลาดจากการประกอบเอง
- หากต้อง encode/decode ค่าใดค่าหนึ่งแยกต่างหาก ให้ใช้เครื่องมือคู่ "URL Encoder/Decoder"
⚠️ ข้อจำกัดและความเข้ากันได้
- เครื่องมือนี้พึ่งพา URL API ของเบราว์เซอร์ จึงอาจแยกวิเคราะห์ URL รูปแบบที่ไม่มาตรฐานบางแบบไม่ได้ และการแก้ไข/ประกอบใหม่แบบแยกฟิลด์สำหรับสคีมที่ไม่เป็นลำดับชั้น เช่น mailto:, data:, file: ยังมีข้อจำกัด
- การเข้ารหัสอัตโนมัติเป็นไปตาม RFC 3986 ซึ่งอาจต่างจากระบบเก่าบางระบบที่ใช้รูปแบบไม่มาตรฐาน
🔒 ความเป็นส่วนตัวและความปลอดภัย
- การประมวลผลทั้งหมดทำในเบราว์เซอร์ของคุณ ข้อมูลไม่ออกจากอุปกรณ์
- ข้อมูลผู้ใช้/รหัสผ่านใน URL จะแสดงแบบข้อความปกติ ควรหลีกเลี่ยง URL ที่มีข้อมูลอ่อนไหวในที่สาธารณะ
- เครื่องมือนี้ใช้สำหรับแยกและประกอบ URL เท่านั้น ไม่ส่ง HTTP request และไม่เข้าถึงปลายทางจริง
❓ คำถามที่พบบ่อย
URL คืออะไร และประกอบด้วยส่วนใดบ้าง?
URL (Uniform Resource Locator) คือ “ที่อยู่” ของทรัพยากรบนอินเทอร์เน็ต โดยทั่วไป URL แบบเต็มจะมี: • scheme/protocol เช่น https:, ftp:, mailto: • ข้อมูลยืนยันตัวตน user:pass@ (ไม่บังคับ มักพบใน FTP/intranet) • host (โดเมนหรือ IP) • port (ไม่บังคับ; ค่าเริ่มต้น HTTPS 443, HTTP 80) • path (pathname) • query string หลัง ? ซึ่งเป็นคู่คีย์-ค่า (คั่นด้วย &) • fragment/hash หลัง # (ใช้ฝั่ง client เท่านั้น ไม่ส่งไปยังเซิร์ฟเวอร์) ตัวอย่าง https://user:[email protected]:8080/path?key=value#section มีครบทุกส่วนข้างต้น เครื่องมือนี้เน้น URL แบบลำดับชั้นและพาธแบบสัมพัทธ์เป็นหลัก; การแก้ไขและประกอบใหม่สำหรับสคีมที่ไม่เป็นลำดับชั้น เช่น mailto:, data:, file: ยังมีข้อจำกัด
ถ้าใส่ URL โดยไม่มีสคีมจะเกิดอะไรขึ้น?
เครื่องมือจะพยายามเติมให้อัตโนมัติ: หากเปิด "เพิ่ม https:// อัตโนมัติเมื่อไม่มีสคีม" ระบบจะเติม https:// และหากปิดจะเติม http:// แทน หากต้องการทดสอบสคีมเฉพาะ เช่น ftp: หรือ custom: ให้พิมพ์คำนำหน้าสคีมแบบเต็มโดยตรง ข้อความ "URL ไม่ถูกต้อง" จะแสดงเมื่อรูปแบบไม่ถูกต้องเท่านั้น
ทำไมแก้พารามิเตอร์แล้วผลลัพธ์ไม่เปลี่ยน?
ตรวจสอบ 2 จุด: 1) “คีย์” ต้องไม่ว่าง (แถวที่คีย์ว่างจะไม่ถูกนำไปใช้) 2) ต้องแก้ในส่วน "พารามิเตอร์คิวรี" ไม่ใช่กล่อง "URL ขาเข้า" เพราะการแก้กล่องขาเข้าจะทำให้ parse ใหม่และอาจทับค่าที่แก้เอง
พารามิเตอร์ที่อยู่ก่อน # กับหลัง # ต่างกันอย่างไร?
ใน URL มาตรฐาน พารามิเตอร์หลัง ? จะถูกส่งไปเซิร์ฟเวอร์ ส่วนหลัง # ใช้เฉพาะฝั่งไคลเอนต์ เครื่องมือนี้จะให้ความสำคัญกับการแยก ?search ก่อน; หาก search ว่างและ # มี ? จะตีความเป็นพารามิเตอร์ hash
ถ้าค่าพารามิเตอร์มีอักขระพิเศษหรืออักขระนอกละตินต้องทำอย่างไร?
พิมพ์ค่าได้ตามปกติ เครื่องมือจะทำ percent-encoding (URL encoding) ให้อัตโนมัติ หากต้อง encode/decode ข้อความทั้งก้อน ให้ใช้ "URL Encoder/Decoder"
แยกพาธแบบ relative ที่ไม่มีโดเมนได้ไหม?
ได้ เช่น /api/data?id=1 จะถูกประมวลผลเป็นพาธแบบ relative โดย protocol และ host จะว่าง
ถ้าเว้นพอร์ตว่างไว้จะเกิดอะไรขึ้น?
ระบบจะใช้พอร์ตมาตรฐานตามสคีม (HTTPS 443, HTTP 80) และจะไม่แสดงพอร์ตใน URL ผลลัพธ์