Skip to content

Creating HTTP Client in Functional Way

Anatoly Kulakov edited this page Dec 30, 2021 · 2 revisions

Павел Московой «Работа с HTTP в платформе .NET, собственный движок для работы с HTTP, использующий функциональный подход на основе типа Result для обработки HTTP-ответа вместо исключений.»

В .NET core для работы с HTTP принято использовать класс HttpClient. Он позволяет легко отправлять и получать данные. Однако возвращаемый ответ может отличаться в зависимости от статус-кода. Для работы с ним удобно использовать функциональный подход и тип Result. При этом для взаимодействия с SOAP часто используются автосгенерированные клиенты на основе встроенного механизма в Visual Studio. Такое решение несёт в себе определённые проблемы, которые будут упомянуты в докладе.
Павел расскажет, как участники команды банка, в которую он входит, выработали единый подход для работы с HTTP на основе REST и SOAP, разработав собственный движок, основанный на использовании HttpClient и функциональных компонентов. Эта часть доклада является логичным продолжением рассказа Андрея о том, как с помощью функционального программирования можно разделить ошибки на фатальные и "ожидаемые". Это особенно наглядно можно продемонстрировать на примере обработки HTTP-ответов. Также будет показано применение разработанного движка для построения клиентов удалённых сервисов на основе REST и SOAP, альтернативных механизму предлагаемому по умолчанию в Visual Studio.


Доклад представил Павел Московой в рамках Встречи MskDotNet №47.

Слайды

Слайды

Видео

Видео

Clone this wiki locally