Соглашение об именовании Rest API без множественного числа - PullRequest
0 голосов
/ 06 декабря 2018

Я сделал сервер API с флягой.

Также я хочу следовать REST API Convention для обслуживания в будущем.

После некоторого поиска обнаружил, что существительное используется с множественным числом.

Но мне интересно, что, если в существительном нет множественного числа, как я могу назвать его?

Ниже конечная точка для пользователя.

/user/{id} - для одного пользователя

/users/ - все пользователи

существительное пользователь в порядке.Но, например, существительное luggage, не имеет множественного числа, просто имеет единственное число.

Я не могу назвать его.

Есть идеи для этого здесь?

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

В REST, и в более общем смысле в программировании, нередко изобретать имена для переменных, ресурсов, таблиц ...

Я бы сказал, что нормально иметь конечную точку /luggages/ для четкого описаниятот факт, что он имеет дело с несколькими ресурсами.

0 голосов
/ 06 декабря 2018

Также я хочу следовать REST API Convention для обслуживания в будущем.

REST не имеет значения, какие соглашения по орфографии вы используете для идентификаторов ресурсов.Любое написание, которое соответствует RFC 3986 , подойдет.Например, если вы посмотрите на RFC 7230 , вы увидите, что нет ссылок на существительные.

http://example.org/C6CF1E69-1EFD-4836-BDF7-025972D85298

... - это совершенно приемлемый URI.

После некоторого поиска обнаружил, что существительное используется во множественном числе.

Часто да.Во многих случаях это заставляет думать об элементах коллекции как о подчиненных самой коллекции, и поэтому написание /collection-name/member-id встречается часто.

Но, как вы заметили, не все английские существительные имеютмножественное число.Также верно, что не все английские существительные имеют форму единственного числа.Любое абсолютное правило потребует либо (а) домена, в котором не возникает ни одного из исключительных существительных, либо (б) некоторого хеджирования.

Машинам все равно - у нас нет компиляторов, которыеищите множественное число в словарях, чтобы убедиться, что правила соблюдаются.Что касается анализаторов URI, то это просто последовательность байтов, составляющих сегмент пути.

Заботится только человеческая аудитория;и на самом деле людей не волнует, что правильное написание следует правилу, настолько, насколько они делают, что правильное написание легко угадать / запомнить.

Короче говоря, если вам нужны идентификаторы для коллекцийbutter, или spectacles, разумный протокол, которому нужно следовать, - это сделать наилучшее предположение из одного доступного вам правописания, не слишком заботясь о том, следует ли это правописание "правилу".

Насколько я могу судить, flask не имеет четкого мнения о множественном числе URI;если это не так, или если мнения не являются удовлетворительными, вы можете обратиться к другим библиотекам, чтобы узнать, что они делают (например, раскрутить Rails Inflector и посмотреть, что делает метод множественного числа).

...