Sto progettando un'API basata su HTTP per un'app Intranet. Mi rendo conto che è una preoccupazione piuttosto piccola nel grande schema delle cose, ma: dovrei usare trattini, trattini bassi o camelCase per delimitare le parole negli URI?
Ecco i miei pensieri iniziali:
camelCase
- possibili problemi se il server non fa distinzione tra maiuscole e minuscole
- sembra avere un uso abbastanza diffuso nelle chiavi della stringa di query ( http://api.example.com ? searchQuery = ...), ma non in altre parti dell'URI
Trattino
- più esteticamente piacevole rispetto alle altre alternative
- sembra essere ampiamente usato nella parte del percorso dell'URI
- mai visto chiave di stringa di query sillabata in natura
- forse meglio per il SEO (questo potrebbe essere un mito)
Sottolineare
- potenzialmente più facile da gestire per i linguaggi di programmazione
- diverse API popolari (Facebook, Netflix, StackExchange, ecc.) utilizzano i caratteri di sottolineatura in tutte le parti dell'URI.
Sono incline a sottolineare per tutto. Il fatto che la maggior parte dei grandi giocatori li stia utilizzando è avvincente (vedi https://stackoverflow.com/a/608458/360570 ).
hyphenated query string in the wild
. Questo è in genere un momento per camelCase.