REST API - Как сделать хорошо

preview_player
Показать описание
В этом видео я расскажу основные принципы при проектирование REST API, которых стоит придерживаться, чтобы ваше описание было понятным и удобным для использования. Первый шаг перед созданием отличной OpenAPI или Swagger спецификации.

00:00 Введение
01:33 Запрос / Request
07:55 Ответ / Response

#REST #API #tutorial #openapi #swagger #examples
Рекомендации по теме
Комментарии
Автор

Отличный материал. Для новичка супер!
Я бы ещё посоветовал сделать видео про модель данных. Связи. На примерах из реальных проектов. Потому что все в основном объясняют на библиотеках) книга автор и т.д.

vladzh
Автор

Дружище, спасибо большое за отличный материал! Очень доступно объясняешь)

petefedorov
Автор

errorCode мой случай) бизнес логика может содержать свои состояния. Например http может быть 200 но по бизнес логике запрос будет отклонен - не страшно. Но например по бизнес логике нужно передать успешный код в параметре errorCode. С точки зрения семантики может здесь лучше использовать например statusCode? Как правильно, поделитесь?

ДмитрийТарасевич-вц
Автор

Спасибо за видео. Коммент в поддержку!

sovrinfo
Автор

Получилось так что этот видеоролик посмотрел только сейчас. Ваш пример мне очень помог в понимании написания методов с телом запроса. Сам Swagger воспринял теперь мой "код описания" без каких-либо ошибок.

Но при попытке ввода новых значений после нажатия кнопки "Tty it out", в области "Code", возвращает не успешный код 200, а следующую ошибку:

TypeError: Failed to execute 'fetch' on 'Window': Failed to read the 'headers' property from 'RequestInit': String contains non ISO-8859-1 code point.

Как думаете, как можно привести описание в соответствие с этим стандартом ISO? Как понять что именно в описании не соответствует этом стандарту?

AntiGusar
Автор

Интересно что "Метод предназначен для получения уведомления со статусом выполнения переданного ранее запроса." реализован через post, логичнее вроде как по restful через get. Можете уточнить почему так?

richug
Автор

методом get ни изменять, ни удалять нельзя не потому что "вас не поймут" 🤦🤦🤦

hiddeninfogofwar
Автор

вы чо там у себя при создании сущности в ответ возвращаете 200 а не 201? лол кек чебурек

Zadr