2015-04-24 4 views
2

В настоящее время я создаю спокойный api с маршрутом users. Является ли более логичным использовать имя пользователя или его идентификатор в качестве параметра, если имя пользователя уникально?Имя или идентификатор в качестве URL-адреса для отдыха api

Либо

example.com/api/users/johndoe 

или

example.com/api/users/123456 

Кроме того, я строганые маршруты для ресурса в project. Было бы непоследовательным дизайном, если мне нужен идентификатор проекта здесь?

ответ

8

Обычно имя пользователя можно запомнить легче, но я бы рекомендовал вам использовать идентификатор, как в имени пользователя, могут быть пробелы или другие символы (например, немецкий umlaute), которые трудно получить в хорошем формате для URL-адреса. Также может быть, что пользователь меняет свое имя. Тогда все ссылки будут недействительными в противоположность идентификатору.

+2

Если вы хотите, вы также можете создать маршрут для поиска, например 'example.com/api/users/search? Name = johndoe'. –

+0

@pbuch Это хорошая причина придерживаться статического идентификатора пользователя. В основном разработчик хочет быть в ситуации, когда им нужно вызвать api вручную. Так что это не должно быть большой проблемой. – user3147268

+1

У меня была такая же проблема. Сочетание ответа pBuch (использование идентификатора) и предложения ScottOffen для добавления поиска для названия, похоже, хорошо работают. Я пробовал это, и кажется, что он довольно интуитивно понятен в отношении URL-адреса. –

 Смежные вопросы

  • Нет связанных вопросов^_^