Существует множество веб-API, которые доступны в реальном мире, некоторые из них открыты для использования некоторым требуется лицензия. Все веб-API имеют разные спецификации для реализации на стороне клиента. Часть реализации на стороне клиента достаточно сложны и требуют сложной реализации. Чтобы ускорить задачу разработки использования веб-API в клиентском приложении, у нас есть интересный инструмент для генерации клиентского кода с помощью NSwagStudio или Open API — Swagger.

Если вы новичок в интеграции Swagger с ASP.NET Core, я бы посоветовал вам прочитать статью — Интеграция Swagger с веб-API .Net Core с использованием Entity Framework, там я продемонстрировал интеграцию библиотеки Swagger в ASP.NET. Веб-API с использованием Entity Framework (размещу чуть позднее).

Необходимые инструменты:

  • NSwagStudio
    Unchase OpenAPI — Swagger: установка с помощью Visual Studio «Управление расширением»

Оба инструмента имеют схожие функции, однако «OpenAPI — Swagger» можно интегрировать с Visual Studio и мгновенно использовать в новом проекте для создания клиентского кода.

Подход 1

После того, как NSwagStudio будет установлен и начальный экран будет выглядеть, как показано ниже,

 

Выберите среду выполнения приложения, файл или URL-адрес спецификации веб-API, тип кода клиента, настройку кода клиента.

Подход 2

Unchase OpenAPI — Swagger установите это расширение и перезапустите Visual Studio.

В этой статье я собираюсь продемонстрировать подход 2 — расширение «Unchase OpenAPI — Swagger» и мгновенную генерацию клиентского кода. Это расширение представляет собой подключенную службу, и Visual Studio становится все проще подключить ваше приложение к службам Azure через Visual Studio Connected Services.

Генерация клиентского кода с помощью Unchase OpenAPI — Swagger

Шаг 1

Создайте новое консольное приложение для проекта .Net Core и дайте название проекту. Например, название проекта — «CompanyWebApiClient».

Шаг 2

Чтобы получить доступ к подключаемым службам Visual Studio, перейдите к своим проектам, «Обзор», к которому можно получить доступ, щелкнув проект правой кнопкой мыши и выбрав «Обзор» ИЛИ щелкнув правой кнопкой мыши проект «Добавить» подключенные службы.

Шаг 3

Затем выберите вкладку «Подключенные службы» слева, чтобы отобразить список подключенных служб, доступных в вашем экземпляре Visual Studio.

Шаг 4

После успешной установки расширения OpenAPI swagger вы должны увидеть службу OpenAPI в разделе «Подключенные службы».

Шаг 5

Нажмите «Unchase OpenAPI (swagger) Connect Service» и появится диалоговое окно, как показано ниже,

Шаг 6

Задайте следующий параметр с именем службы, документом спецификации веб-API и типом генерации клиентского кода, как показано ниже.

Шаг 7

Здесь мы находим три типа генерации клиентского кода.

7а. Создать клиент CSharp — создает фактический класс CSharp, который имеет реализацию HttpClient для вызова всех веб-API.

7б. Generate TypeScript Client — генерирует фактический TypeScript, который имеет реализацию HttpClient для вызова всех веб-API.

7в. Generate CSharp Controller — генерирует контроллер веб-API.

Шаг 8

В настройках клиента CSharp отметьте следующие разделы, как показано ниже, для настройки кода клиента.

Шаг 9

В разделе «Клиент» выполните следующие настройки.

Шаг 10

Выполните следующие настройки в разделе «Data Transfer Object — DTO Classes». Для первой попытки оставьте все настройки по умолчанию. Позже вы можете настроить несколько параметров и наблюдать за изменениями в генерации клиентского кода.

Шаг 11

Теперь давайте нажмем кнопку «Готово», чтобы сгенерировать клиентский код. Это займет несколько секунд на основе спецификации веб-API.

Шаг 12

После того, как процесс генерации будет завершен, вы сможете увидеть подключенные сервисы в проекте. Здесь «CompanyClientService.cs» имеет реализацию клиентского кода для использования веб-API.

Шаг 13

Теперь мы будем использовать сгенерированный клиентский код для вызова веб-API в «Program.cs».

Шаг 14

Давайте получим все данные о сотрудниках с помощью client.ApiEmployeeGetAsync ();

Шаг 15

Результат вышеуказанного вызова веб-API.

Шаг 16

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

Очень весело выполнять вызовы веб-API, не написав ни единой строчки кода HttpClient, и не нужно беспокоиться об обновлениях спецификаций веб-API.

Резюме

Мы исследовали создание клиентского кода веб-API с расширением Unchase OpenAPI с использованием документа спецификации Swagger API. Мы заметили, что на стороне клиента не было реализовано ни одной строчки кода для использования веб-API. Это сократило усилия разработчика и повысило продуктивность разработчика, что делает разработчика умнее в организации.

Надеюсь, эта статья поможет вам понять простой подход. Спасибо, что прочитали статью.