#rest #endpoint
#rest #конечная точка
Вопрос:
Я хочу создать конечную точку rest, но я не уверен, что это правильный путь. Например, я хочу предоставить конечную точку для создания учетной записи, но существует несколько типов учетных записей, таких как: Обычная учетная запись с именем свойства, описанием и текущим балансом
Учетная запись кредитной карты с именем свойства, описанием, текущим балансом, льготным периодом, датой выставления счета и текущей задолженностью. Теперь путаница в том, должен ли я создать две конечные точки для каждого типа учетной записи? или я должен создать единую конечную точку со всем свойством.
Ответ №1:
Должен ли я создать две конечные точки для каждого типа учетной записи? или я должен создать единую конечную точку со всем свойством.
Как бы вы это сделали на веб-сайте?
У вас может быть одна create-account
форма; вы собираете необходимую информацию от посетителя, форма отправляется на сервер, и сервер просматривает детали формы, чтобы определить, какую учетную запись создать. Создайте учетную запись и отправьте ответ браузеру, сообщающий, где находится веб-страница с описанием учетной записи. И это нормально.
Вы можете сделать то же самое с несколькими формами; с помощью серии ссылок вы направляете посетителя к форме, которая наилучшим образом соответствует его обстоятельствам, а затем остальная работа такая же, как указано выше — форма отправлена, сервер просматривает данные формы, чтобы определить учетную запись для создания, учетную записьсоздается, сервер отправляет ответ браузеру, сообщающий, где находится веб-страница с описанием учетной записи. И это тоже хорошо.
Вы могли бы сделать то же самое с несколькими формами, но отправить каждую из форм с использованием другого целевого URI; вы могли бы даже отправить каждую форму на другой хост! Опять же, действия, предпринятые хостом, получающим форму, одинаковы — выполните работу, верните результат, сообщающий, где находится новая веб-страница.
Браузеру все равно, он просто собирает входные данные формы с использованием стандартных правил обработки форм, а затем отправляет результат, используя метаданные в форме.
Вам понадобится другой код, отвечающий за создание каждого из разных типов учетных записей (идея «разделения задач»), но не имеет большого значения, выполняется ли маршрутизация запроса к этому коду чисто механически (потому что вы используете другой URI) или «вручную».