Урок 3 — Изучаем swagger при помощи petstore.swagger.io

 

Прежде чем нам дальше разбираться с postman, нам необходимо узнать что такое  Swagger и научиться с ним работать.

Вам необходимо перейти по следующей ссылке https://petstore.swagger.io/

https://petstore.swagger.io/, представляет собой пример документации API, созданный с помощью фреймворка Swagger

Swagger — это инструмент, который позволяет разработчикам описывать, документировать и тестировать API. Он облегчает взаимодействие с веб-службами, предоставляя понятное описание и возможность протестировать запросы и ответы напрямую в интерфейсе.

https://petstore.swagger.io/ — это не настоящий сайт зоомагазина. Эта страница демонстрирует, как можно использовать Swagger для документирования API. Она использует тему зоомагазина, чтобы продемонстрировать различные функции фреймворка.

Основная цель Swagger — это документирование API. Основная цель Postman — это тестирование. В swagger, в отличие от postman нельзя писать автотесты, создавать коллекции, переменные, запускать run-ы и т д.

И так, в https://petstore.swagger.io/ мы можем работать с животными, с заказами и с пользователями, а также у нас есть описание моделей разных сущностей, с которыми мы будем работать

Давайте развернем модель животного (pet) и посмотрим что там есть. У pet есть id c типом integer (число), также pet относится к какой-то категории (Category) У Category есть id с типом  integer (число) и есть название категории (name) c типом string (строчка). Также у животного есть имя (name) c типом String (строка)

Теперь давайте попробуем добавить новое животное в магазин через метод  POST /pet где мы будем передавать данные в теле body  при помощи json.

Нажимаем на Try it out

Теперь в json указываем те данные, которые мы хотим, чтобы были у нашего животного. Пусть id животного будет 555777

Id категории будет 4444, название категории будет  «dogs». Имя животного будет «Jack», остальные атрибуты оставляем без изменений и нажимаем на «Execute»

Давайте посмотрим что нам вернулось. Нам вернулся запрос, отправленный при помощи curl (curl позволяет нам обращаться к серверу через командную строку). Нам вернулся Request URL на который мы обращались, чтобы отправить наш запрос.  Нам вернулся код ответа 200 — это значит что запрос выполнился успешно, вернулось тело ответа в виде json. И также вернулся список заголовков (headers)

  • Server: Информация о сервере, обрабатывающем запрос.
  • Date: Дата и время создания запроса или ответа.
  • Content-Type: Тип контента, передаваемого в теле запроса или ответа (например, текст, изображение, JSON)

Давайте попробуем создать еще одно животное, но уже через curl. Скопируем тот curl, который нам вернулся, поменяем id животного на 555778, id и название категории оставим неизменными, а имя животного изменим на «Barsik» Вставляем наш запрос в командную строку ( на mac это будет terminal)

и нажимаем на Enter и видим что нам вернулся json c новым животным

Давайте в этом убедимся и найдем оба наших животных при помощи метода get /pet/{petID}

Для этого нажмем на «Try it out»

Введем в поле petID id нашего первого животного 555777, которое мы добавляли через swagger. Название ( path) означает, что это path параметр, он передается в строке. Подробнее обо всех параметрах, мы будем говорить в следующих уроках, посвященных postman. И нажимаем на execute.

И как мы видим нам вернулся 200 код ответа ( это значит что запрос выполнен успешно) с телом ответа, в котором будут данные наши животного с id 555777

Давайте теперь аналогично сделаем для нашего животного которое мы создавали при помощи curl c id 555778

И как мы видим и здесь нам вернулся 200 код ответа ( это значит что запрос выполнен успешно) с телом ответа, в котором будут данные нашего животного с id 555778, которое мы добавляли через curl

Вот так вот работает swagger.

Понравилась статья? Поделиться с друзьями: