Проектирование REST API: спорные вопросы с проектов и собеседований на системного аналитика (и не только)

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Привет! Эта статья на холиварную тему. Комментарии приветствуются, особенно если у вас есть интересный опыт, которым можете поделиться!

Проектирование REST API - это процесс создания дизайна методов обмена данными. Дизайн - это субъективное. У одних "так", у других "сяк". А кто прав? Иногда все, а иногда нет.

В этой статье Системные аналитики, Backend-разработчики и Архитекторы найдут спорные вопросы с проектов и собеседований, которые связаны с созданием контрактов REST API.

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

-------------------------------------

Спорные вопросы:

  1. Можно ли использовать метод POST для получения данных?

  2. Можно ли сделать в проекте все методы POST?

  3. Можно ли в GET передавать тело запроса?

  4. Как правильно именовать эндпоинты - ед. число или мн. число (/user или /users)?

  5. Как правильно строить URL - нужно ли писать create/update в названии метода?

  6. Какой код ответа на метод POST: 200 или 201?

  7. Что вернуть в ответ, если получен пустой результат - пустой массив или 404?

-------------------------------------

REST API - что это и для чего?

REST API - это архитектурный стиль, который определяет, по каким правилам приложения должны обмениваться данными между собой. Он используется для создания веб-сервисов, мобильных приложений, интеграционных платформ и других IT-решений.

Впервые был определен и описан Роем Филдингом в диссертации 2000-го года. Рой Филдинг - соавтор спецификаций HTTP и URI.

Главная цель REST API - облегчить передачу и управление информацией между разными системами: создавать, читать, изменять, удалять (CRUD). REST API использует для этого стандартные HTTP-запросы: GET, POST, PUT, DELETE и другие.

Источник: https://habr.com/ru/articles/770226/


Интересные статьи

Интересные статьи

Я просто хотел строго типизированные интеграционные тесты для .net rest api. Как я к этому пришёл и что вышло. Рейтинг 0 Добавить в закладки 0
Перед вами первая часть из трёх частей общего труда, вводная часть цикла статей о проектировании процессов разработки IT-продукта. Данная вводная статья носит философский характер, некий взгляд на ве...
В рамках одного из исследований при разработке программного обеспечения для анализа сетевого трафика возникла идея проводить классификацию различных сессий пользователя по различным видам его сетевой...
«Если ваши конкуренты применяют ИИ и они нашли способ, позволяющий им ускориться, то они оторвутся от вас очень быстро», — поделилась CTO компании IBM по data science и ИИ Дебора Лефф на сцене Trans...
Моя попытка организации системы управления продуктами на сайте c PrestaShopТак уж сложилось, что мне 22, и я работаю в велосипедном магазине в Варшаве. Работы здесь довол...