Как веб/мобильный разработчик, вы будете иметь дело с API при работе с приложениями с полным стеком из-за того, насколько они вездесущи. Каждый раз, когда вы заходите в приложение для совместного использования, чтобы проверить свое местоположение, происходит следующее: служба совместного использования (клиент) запрашивает ваше текущее местоположение из сторонних приложений, таких как API карт Google. Следовательно, наше местоположение отображается в режиме реального времени, потому что на картах Google есть данные о местоположении, которых может не быть в некоторых приложениях для совместных поездок из-за их ресурсоемкости, поэтому они передают данные на аутсорсинг в виде API.

Вы также взаимодействуете с API, когда хотите войти в различные приложения с помощью социальных сетей (Twitter, Facebook, Google, Github). Этот вариант более безопасен и чаще удобен, чем вход с вашими учетными данными вручную. API также широко используются в приложениях электронной коммерции, когда речь идет о платежах за услуги, они часто используют платежные решения, такие как Stripe, Paypal, Paystack и т. д.

Что такое API?

API действуют как посредник между двумя машинами (чаще всего клиент и сервер), чтобы позволить им общаться друг с другом. Как видите, API используются повсеместно, и для разработчика это действительно важный навык, который нужно иметь под рукой.

В этой статье мы рассмотрим, как обрабатывать данные, запрашиваемые у клиентов, с помощью библиотеки проверки данных Python, pydantic.

При создании API вам необходимо контролировать отправляемую информацию, чтобы избежать неправильного ввода данных (например, клиент может отправить пустое поле для поля имени или строковый формат для числового поля), принудительно включив его в схему. Схема определяет, как должны выглядеть данные, чтобы клиент мог предоставить ему необходимую информацию, если он не выдает ошибку. Python имеет библиотеку проверки данных, которая решает эту проблему, называемую pydantic.

Pydantic — это средство проверки данных и управления настройками с использованием аннотаций типа PythonОфициальная документация Pydantic. Pydantic гарантирует, что отправленные или полученные данные соответствуют ожиданиям, если только они не вернут очень понятное сообщение об ошибке (которое мы все ценим 😂❤️).

Pydantic и классы данных Python

Классы данных Python — это способ написания классов Python в виде контейнеров данных. Они хранят данные более эффективным и элегантным способом без написания большого количества стандартного кода и инициализации каждого аргумента в нашем классе Python. Давайте посмотрим, как обычный класс Python структурирован по отношению к классу данных Python, создав класс Product для приложения электронной коммерции:

Обычный класс Python:

Класс данных Python:

Из примера вы можете видеть, что здесь меньше шаблонов и более строгое применение концепции DRY (не повторяйтесь). Однако классы данных Python не поддерживают проверку типов или данных, в отличие от Pydantic. В других случаях, чтобы начать работу с pydantic, вам необходимо установить его на виртуальную машину.

pip install pydantic 

Чтобы использовать pydantic, вы должны импортировать BaseModel, а затем передать его в качестве аргумента в свой класс.

Pydantic проверяет соответствие предоставленных данных описанной схеме, если соответствует. Он возвращает данные, в противном случае возникает ошибка. Это будет ошибка, которая возникнет, если поле цены будет закомментировано из словаря.

raise validation_error
pydantic.error_wrappers.ValidationError: 1 validation error for Product
price
  field required (type=value_error.missing)

Pydantic — очень мощная библиотека для анализа и проверки данных. И это было просто пошаговое руководство о том, как начать работу с Pydnatic, для более глубокого понимания того, как работает pydnatic, вы можете проверить их официальную документацию. Если вам понравилась эта статья, пожалуйста, похлопайте ей и поделитесь ею, спасибо :) ❤️.