Я разрабатываю API на основе HTTP для приложения интрасети. Я понимаю, что это довольно маленькая проблема в великой схеме вещей, но: использовать ли дефисы, подчеркивания или camelCase для разграничения слов в URI?
Вот мои первоначальные мысли:
верблюжьего
- Возможные проблемы, если сервер нечувствителен к регистру.
- похоже, довольно широко используется в строках ключей запроса (http://api.example.com? searchQuery =...), но не в других частях URI.
дефис
- более эстетично, чем другие альтернативы
- по-видимому, широко используется в части пути URI
- никогда не видел строки строки с переносимой строкой запроса в дикой природе.
- возможно, лучше для SEO (это может быть мифом)
Подчеркивание
- потенциально проще для языков программирования для обработки
- несколько популярных API (Facebook, Netflix, StackExchange и т.д.) используют символы подчеркивания во всех частях URI.
Я склоняюсь к тому, чтобы подчеркнуть все. Тот факт, что большинство крупных игроков использует их, является убедительным (см. https://stackoverflow.com/a/608458/360570).