Estoy diseñando una API basada en HTTP para una aplicación de intranet. Me doy cuenta de que es una preocupación bastante pequeña en el gran esquema de las cosas, pero: ¿debo usar guiones, guiones bajos o camelCase para delimitar palabras en los URI?
Aquí están mis pensamientos iniciales:
el caso de Carmel
- posibles problemas si el servidor no distingue entre mayúsculas y minúsculas
- parece tener un uso bastante extendido en las claves de cadena de consulta ( http://api.example.com ? searchQuery = ...), pero no en otras partes de URI
Guión
- más estéticamente agradable que las otras alternativas
- parece ser ampliamente utilizado en la porción de ruta de la URI
- clave de cadena de consulta con guión nunca vista en estado salvaje
- posiblemente mejor para SEO (esto puede ser un mito)
Guion bajo
- potencialmente más fácil de manejar para los lenguajes de programación
- varias API populares (Facebook, Netflix, StackExchange, etc.) utilizan guiones bajos en todas las partes del URI.
Me estoy inclinando hacia guiones bajos para todo. El hecho de que la mayoría de los grandes jugadores los estén usando es convincente (ver https://stackoverflow.com/a/608458/360570 ).
hyphenated query string in the wild
. Ese suele ser un momento para camelCase.