SOAP 끝점을 사용하여 전통적인 WCF 서비스를 구성했습니다. 클라이언트 프로젝트에서 Service Reference 등을 추가했습니다. 이들은 예상대로 작동합니다.JSON, JSONP 및 SOAP 끝점이있는 WCF 서비스
.svc 파일, 웹 설정 등을 수정하여 JSONP 지원 WCF 서비스를 만들었습니다. 테스트 할 테스트 클라이언트 페이지를 만들었습니다. JSONP 서비스를 성공적으로 호출하고 있습니다.
그러나 웹 구성에 대한 변경 사항은 SOAP 서비스에 대한 서비스 참조를 위반했습니다. 두 가지 유형의 종점을 모두 사용하고 싶습니다. 서비스 및 웹 구성을 구성하는 방법을 잘 모르겠습니다. HTTP 만, (이 SOAP 또는 JSONP를위한 것입니다 관계없이 경우) 모든 작업을 장식 할 수 있습니다받을 경우
: 다음 [WebGet(ResponseFormat = WebMessageFormat.Json)]
내 서비스 클래스 필요 : [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
지금 업데이트 할 때 내 내 클라이언트 프로젝트의 서비스 참조
바인딩 인스턴스가 이미 'http : // flixsit : 1000/FlixsitWebServices.svc'수신 대기하고 있습니다. 두 개의 엔드 포인트가 동일한 ListenUri을 공유하려는 경우에도 동일한 바인딩 오브젝트 인스턴스를 공유해야합니다. 충돌하는 두 종점은 AddServiceEndpoint() 호출, 구성 파일 또는 AddServiceEndpoint()와 config의 조합으로 지정되었습니다.
SOAP 구성을 내 webconfig에 추가하면 JSONP 끝점도 손상됩니다. 클라이언트 측에서 JSONP를 호출하면 클라이언트 서비스 참조 (또는 프록시 생성)가 필요하지 않지만 SOAP는 올바른가?
내 서비스 WebConfig는 :
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="webHttpBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="DefaultBehaviors">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<webHttpBinding>
<binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true" />
</webHttpBinding>
<basicHttpBinding>
<binding name="BasicHttpEndpointBinding" />
</basicHttpBinding>
</bindings>
<services>
<service name="Flixsit.Services.FlixsitWebServices" behaviorConfiguration="DefaultBehaviors">
<endpoint name="JSONPEndPoint" address=""
binding="webHttpBinding"
bindingConfiguration="webHttpBindingWithJsonP"
contract="Flixsit.Services.IFlixsitWebServices"
behaviorConfiguration="webHttpBehavior" />
<endpoint name="HttpEndPoint" address=""
binding="basicHttpBinding"
contract="Flixsit.Services.IFlixsitWebServices" />
<host>
<baseAddresses>
<add baseAddress="http://Flixsit:1000/FlixsitWebServices.svc" />
</baseAddresses>
</host>
</service>
</services>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
전체 구성을 볼 수 있도록 질문을 수정하십시오. –