Как определить конечные точки API - PullRequest
0 голосов
/ 19 февраля 2019

Я разрабатываю API для запроса информации об индексе с данными, относящимися к определенному формату JSON.

На данный момент у меня есть только данные с построением типов, но может появиться другой тип, т.е.:

example data #1 :
"type": "building",
"id": "1",
"address" : "1 test",
...
"buildingType": "private",
"buildingSubType: "house"

example data #2 :
"type": "building",
"id": "2",
"address" : "100 test",
...
"buildingType": "corporate",
"buildingSubType: "restaurant"

example data #3 :
"type": "building",
"id": "3",
"address" : "200 test",
...
"buildingType": "government",
"buildingSubType: "hr services"

Когда я начал, данные были проще с меньшим количеством типов и подтипов, поэтому создание конечных точек API было простым, но со временем усложняется, и я хочу определить свой API, чтобы быть более устойчивым к будущему в отношенииновые данные

Что касается REST и будущей документации API, вот что я получил и хотел бы проверить:

/buildings - Returns all buildings entries
/buildings/{id} - Returns a specific building entry
/buildings/buildingTypes - Returns all buildingTypes
/buildings/buildingTypes/{name} - Returns building entries with the specified buildingType
/buildings/buildingTypes/{name}/buildingSubTypes - Returns all buildingSubTypes for the specified buildingType
/buildings/buildingTypes/{name}/buildingSubTypes/{name} - Returns building entries with the specified buildingType and buildingSubType

Для 2 я добавлю параметры строки запроса для более точной фильтрацииНапример: / Buildings / BuildingTypes / Корпоративные? Штаты = Нью-Йорк / Здания / BuildingTypes / Корпоративные / BuildingSubTypes / Ресторан? State = Нью-Йорк

1 Ответ

0 голосов
/ 19 февраля 2019

Что касается REST и будущей документации по API, вот что я получил и хотел бы проверить

REST не имеет значения, какое написание вы используете для своих URL-адресов или как вы организовываетеваша иерархия ресурсов.

Соглашения об написании URL-адресов предназначены только для удобства людей - они не более важны для правильности API, чем написание имен переменных.

...