x
 
Владимир Серёгин
4 января 2018
Советы почтой каждую неделю
Пожалуйста, получите наше письмо, чтобы подтвердить свой адрес:
Вы подписаны на «Советы за неделю»:

Руст, Василий и Илья, привет!

Расскажите о дизайне REST API.


REST — это набор прин­ци­пов для постро­е­ния гиб­ких и мас­шта­би­ру­е­мых веб‑сер­ви­сов. REST поле­зен, когда вашему при­ло­же­нию нужен внеш­ний интер­фейс, с кото­рым будут рабо­тать раз­ные кли­енты: одно­стра­нич­ное веб‑при­ло­же­ние на Явас­крипте, мобиль­ное при­ло­же­ние на Свифте, внут­рен­ний билинг на Эрланге и сто­рон­ние сер­висы кли­ен­тов на любых язы­ках программирования.

В бюро

Бюро­би­линг — веб‑сер­вис, отве­ча­ю­щий за про­дажу про­дук­тов и услуг: под­писки, тарифы и авто­про­дле­ние. Опре­де­ляет, когда и сколько спи­сать по ини­ци­а­тиве поку­па­теля, при авто­про­дле­нии и при дру­гих усло­виях. Под­твер­ждает поку­па­телю опе­ра­ции по почте и в интер­фейсе. Напо­ми­нает о про­сро­чен­ных пла­те­жах. У каж­дого про­дукта может быть свой билинг. Мета­фора — про­да­вец продукта.

Бюро­касса — веб‑сер­вис, отве­ча­ю­щий за спи­са­ния с поль­зо­ва­те­лей Бюро­сферы по зада­нию билинга, под­твер­ждает спи­са­ние про­давцу. Мета­фора — бух­гал­тер и кассир.

Бюро­би­линги напи­саны на Руби, ПХП и Явас­крипте и рабо­тают с одним и тем же АПИ Бюро­кассы, постро­ен­ном по прин­ци­пам REST.

Зна­ком­ство с REST лучше начать с базо­вых вещей: ресурсы, урлы, ХТТП и гла­голы. Чтобы понять, как всё это свя­зано между собой и зачем, в прин­ципе, нужен REST, сове­тую прочитать:

Чтобы понять, как сде­лать пред­ска­зу­е­мыми и удоб­ными неоче­вид­ные вещи типа поиска, сор­ти­ровки, вер­си­о­ни­ро­ва­ния и пред­став­ле­ния ресур­сов в JSON, сове­тую прочитать:

Чтобы понять, как под­хо­дить к слож­ным вещам типа паги­на­ции, фор­ма­ти­ро­ва­ния оши­бок или аутен­ти­фи­ка­ции, сове­тую изу­чить пуб­лич­ные АПИ:

P. S. Это был совет о веб‑разработке. Хотите знать всё о коде, тестах, фронтенд‑разработке, цеэсэсе, яваскрипте, рельсах и джейде? Присылайте вопросы.
Вёрстка и прототипирование — дисциплина Школы дизайнеров. Набор закрыт. Оставьте почту, и мы напишем вам, когда откроется следующий набор.
 

Поделиться
Отправить

Комментарии

Иван Гришаев
9 января 2018

Стоит дополнить, какие спецификации можно взять на замену REST:

JSON RPC http://www.jsonrpc.org/specification

CQRS https://docs.microsoft.com/en-us/azure/architecture/patterns/cqrs


Цель рубрики — обсуждение вопросов дизайна всех видов, текста в дизайне и взаимоотношений дизайнеров с клиентами.

Мы публикуем комментарии, которые добавляют к уже сказанному новые мысли и хорошие примеры. Мы ожидаем, что такие комментарии составят около 20% от общего числа.

Решение о публикации принимается один раз; мы не имеем возможности комментировать или пересматривать свое решение, хотя оно может быть ошибочно. Уже опубликованные комментарии могут быть удалены через некоторое время, если без них обсуждение не становится менее ценным или интересным.

Вот такой веб 2.0.

Как следить за качеством кода? Часть вторая: метрики Что такое СВГ и как его использовать в ХТМЛ-вёрстке? 1 Джанго или Рельсы? Как следить за качеством кода? Часть первая: зачем




Недавно всплыло

Хочу научиться сторителлингу 2 4 2 В бюро есть таймтрекинг для сотрудников? 5