ฉันกำลังออกแบบ API บน HTTP สำหรับแอปอินทราเน็ต ฉันรู้ว่ามันเป็นข้อกังวลเล็ก ๆ น้อย ๆ ในรูปแบบที่ยิ่งใหญ่ของสิ่งต่าง ๆ แต่: ฉันควรใช้ยัติภังค์, ขีดล่าง, หรือ camelCase เพื่อคั่นคำใน URIs หรือไม่?
นี่คือความคิดเริ่มต้นของฉัน:
CamelCase
- ปัญหาที่เป็นไปได้หากเซิร์ฟเวอร์ไม่คำนึงถึงขนาดตัวพิมพ์
- ดูเหมือนว่าจะมีการใช้งานอย่างแพร่หลายในคีย์สตริงข้อความค้นหา ( http://api.example.com ? searchQuery = ... ) แต่ไม่ใช่ในส่วนอื่น ๆ ของ URI
ยัติภังค์
- ชื่นชอบสุนทรียภาพมากกว่าทางเลือกอื่น
- ดูเหมือนว่าจะใช้กันอย่างแพร่หลายในส่วนของเส้นทางของ URI
- ไม่เคยเห็นคีย์สตริงข้อความค้นหาที่มีการใส่ยัติภังค์ในป่า
- อาจดีกว่าสำหรับ SEO (นี่อาจเป็นตำนาน)
ขีด
- อาจง่ายกว่าสำหรับภาษาโปรแกรมที่จะจัดการ
- API ยอดนิยมหลายแห่ง (Facebook, Netflix, StackExchange ฯลฯ ) กำลังใช้ขีดเส้นใต้ในทุกส่วนของ URI
ฉันเอนตัวไปที่ขีดเส้นใต้เพื่อทุกสิ่ง ความจริงที่ว่าผู้เล่นรายใหญ่ส่วนใหญ่ใช้งานพวกเขานั้นน่าสนใจ (ดูhttps://stackoverflow.com/a/608458/360570 )
hyphenated query string in the wild
สุดท้ายผมคิดว่าคุณมีสิทธิ์เมื่อคุณบอกว่าคุณไม่เคยเห็น โดยทั่วไปนั่นเป็นเวลาสำหรับ camelCase