https api 연동을 하다가 그동안 restsharp을 이용했는데 오류가 발생해서 찾아보다가 구글에서는 httpclient를 많이 사용해서 차이점이 뭔지 알아봄
HttpClient 는 .NET 환경에서 사용할 수 있는 클래스입니다. HttpClient 클래스를 사용하여 HTTP 요청을 보내고 URI를 기반으로 HTTP 응답을 받습니다. HttpClient는 여러 동시 요청을 처리할 수 있습니다.
RestSharp 는 API를 사용하는 데 사용할 수 있는 오픈 소스 HTTP 클라이언트 라이브러리입니다. 이를 기반으로 NuGet Package Manager를 사용하여 설치할 수 있습니다. RestSharp는 HTTP 프로토콜을 사용하여 모든 API를 호출할 수 있지만 RestSharp의 목적은 REST API를 사용하는 것입니다. RestSharp는 동기 및 비동기 요청을 모두 지원합니다.
HttpClient 개체는 HTTP 요청을 보내고 HTTP 응답을 받는 데 사용할 수 있는 세션처럼 작동합니다. 모든 요청에 적용되는 설정 모음이라고 설명할 수 있습니다. 또한 HttpClient 인스턴스는 요청 격리를 위해 연결 풀을 사용합니다. RestSharp와 달리 HttpClient는 비동기 메서드만 지원합니다 .
마찬가지로 RestSharp는 외부 API를 사용할 때 사용하기에 지나치게 복잡하지 않습니다. 여러 플랫폼에서 사용하기 쉬운 라이브러리입니다. RestSharp는 아마도 타사 라이브러리 중에서 가장 인기 있는 .NET용 HTTP 클라이언트 라이브러리라고 말할 수 있습니다.
HttpClient와 달리 RestSharp는 동기식 및 비동기식 메서드를 지원합니다. RestSharp가 제공하는 또 다른 훌륭한 기능은 자동 JSON, XML 및 맞춤형 직렬화 및 역직렬화입니다. 최신 버전 내부의 주요 변경 사항은 RestSharp가 레거시 HttpWebRequest 클래스 사용을 중지하고 대신 HttpClient를 사용한다는 것 입니다.
우리의 성능 분석은 두 라이브러리가 시간 성능에서 유사하다는 것을 보여줍니다 . 그러나 HttpClient는 메모리 할당과 관련하여 더 나은 성능을 발휘합니다 .