ข้ามไปที่เนื้อหา

ตัวแยกวิเคราะห์ URL

ตัวแยกวิเคราะห์ URL

แยก URL แบบลำดับชั้นที่พบบ่อย (เช่น https://example.com/path) ออกเป็นฟิลด์แบบมีโครงสร้าง เช่น โปรโตคอล โฮสต์ พอร์ต และพาธ แก้ไขพารามิเตอร์คิวรีได้ทีละรายการ และพรีวิว URL ที่ประกอบแล้วแบบเรียลไทม์ เหมาะสำหรับดีบัก API วิเคราะห์ลิงก์ และปรับแต่งพารามิเตอร์

ตัวแยกวิเคราะห์ URL

🚀 เริ่มต้นอย่างรวดเร็ว

  • วางหรือพิมพ์ 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 ผลลัพธ์