Je conçois une API basée sur HTTP pour une application intranet. Je me rends compte que c'est une assez petite préoccupation dans le grand schéma des choses, mais: dois-je utiliser des tirets, des traits de soulignement ou camelCase pour délimiter les mots dans les URI?
Voici mes premières réflexions:
affaire de chameau
- problèmes possibles si le serveur ne respecte pas la casse
- semble avoir une utilisation assez répandue dans les clés de chaîne de requête ( http://api.example.com ? searchQuery = ...), mais pas dans d'autres parties URI
Trait d'union
- plus esthétique que les autres alternatives
- semble être largement utilisé dans la partie chemin de l'URI
- clé de chaîne de requête avec un trait d'union dans la nature
- peut-être mieux pour le référencement (cela peut être un mythe)
Souligner
- potentiellement plus facile à gérer pour les langages de programmation
- plusieurs API populaires (Facebook, Netflix, StackExchange, etc.) utilisent des traits de soulignement dans toutes les parties de l'URI.
Je penche vers les soulignés pour tout. Le fait que la plupart des grands joueurs les utilisent est convaincant (voir https://stackoverflow.com/a/608458/360570 ).
hyphenated query string in the wild
. C'est généralement le moment de camelCase.