BasicHttpBinding 및 WsHttpBinding 및 WebHttpBinding


297

WCF에는 여러 가지 유형의 HTTP 기반 바인딩이 있습니다.

이 3 가지 차이점은 무엇입니까?

특히 기능 / 성능 및 호환성 측면에서 차이점은 무엇입니까?


44
[BasicHttpBinding = Soap 1.1], [WsHttpBinding = Soap 1.2], [WebHttpBinding = Rest]
Frank Myat Thu

여기에 두 SOAP 기반 바인딩의 비교 : basicHttpBinding vs wsHttpBinding
DavidRR

답변:


518

사과를 오렌지와 비교하고 있습니다.

  • webHttpBinding 은 기본적으로 URL을 입력하고 웹 서비스에서 XML 또는 JSON의 트럭로드를 다시 가져 오는 REST 스타일 바인딩입니다.

  • basicHttpBindingwsHttpBinding 은 두 가지 SOAP 기반 바인딩이며 REST와는 매우 다릅니다. SOAP는 WSDL과 XSD를 통해 서비스, 메소드 및 전달되는 데이터를 상세하게 설명 할 수 있다는 장점이 있습니다 (REST에는 아직 그런 것이 없습니다). 반면, 브라우저로 wsHttpBinding 엔드 포인트를 탐색하고 XML을 볼 수는 없습니다. WcfTestClient 또는 자체 앱과 같은 SOAP 클라이언트를 사용해야합니다.

따라서 첫 번째 결정은 REST vs. SOAP이어야합니다 (또는 서비스에서 두 가지 유형의 엔드 포인트를 노출 할 수도 있습니다).

그런 다음 basicHttpBinding과 wsHttpBinding의 차이점은 다음과 같습니다.

  • basicHttpBinding은 매우 기본적인 바인딩입니다. SOAP 1.1, 보안 측면은 많지 않지만 기능 측면은 많지 않지만 거의 모든 SOAP 클라이언트와 호환됩니다.

  • wsHttpBinding은 수많은 WS- * 기능 및 표준을 지원하는 완전한 바인딩입니다. 더 많은 보안 기능이 있으며, 세션 연결을 사용할 수 있으며, 안정적인 메시징을 사용하고, 트랜잭션 제어를 사용할 수 있습니다. 그러나 wsHttpBinding은 또한 훨씬 * 무겁고 "네트워크를 통해 메시지를 전달할 때 메시지에 많은 오버 헤드를 추가합니다.

두 코드 사이의 심도있는 비교 (테이블 및 코드 예제 포함)는이 코드 프로젝트 기사를 확인하십시오 : BasicHttpBinding과 WsHttpBinding의 차이점


1
나는 여기에 어떤 결정을 내리지 않고 있습니다. 나는 단지 당신이 오렌지의 맛과 사과의 맛이 무엇인지 알아야한다는 차이점을 알고 싶었습니다. 그래서이 질문을했습니다. 기능 비교 및 ​​성능 측면에서 WebHttpBinding에 대한 자세한 내용이 필요합니다.
Mubashar

구글이나 빙 확인하고 "REST 대에 SOAP"를 검색 - 부하 의 정보가 밖으로!
marc_s

4
한 가지 수정 : wsHttpBinding은 스트리밍을 지원하지 않습니다. 아니면 뭔가 빠졌습니까? msdn.microsoft.com/ko-kr/library/ms730879.aspx
Andrew Shepherd

1
@Andrew Shepherd : 링크와 수정에 감사드립니다. wsHttpBinding은 스트리밍을 지원하지 않습니다 .....
marc_s

@ EduardoLeón REST 테넌트 중 하나는 HTTP에 내장 된 기능을 활용하는 것입니다. 인증은 HTTP에 내장되어 있으므로 원하는 모든 유형의 인증 공급자를 사용할 수 있습니다. Basic 또는 NTLM처럼 간단하거나 OAuth / STS 토큰 등을 활용하는 고급 작업을 수행 할 수 있습니다.
BrainSlugs83
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.