2009-05-19 4 views
-1

Le WSDl doit-il être accessible uniquement via ".svc? Wsdl"? J'ai un service qui a plusieurs points de terminaison. Par exemple (dans le web.config):WCF avec plusieurs points de terminaison accédant WSDL?

<services> 
    <service behaviorConfiguration="MyServiceTypeBehavior" name="WcfService1.Service"> 
    <endpoint binding="wsHttpBinding" bindingConfiguration="ws1" 
    name="ws1" contract="WcfService1.IMyService" /> 
    <endpoint address="http://www.blah.com/Service.svc/Basic" binding="basicHttpBinding" 
    bindingConfiguration="Basic" name="Basic" contract="WcfService1.IMyService" /> 
    <endpoint address="http://localhost:5606/Service.svc/Secured" 
    binding="wsHttpBinding" bindingConfiguration="WsSecured" name="WsSecured" 
    contract="WcfService1.IMyService" /> 
    </service> 
</services> 

Si je vais à: http://www.blah.com/Service.svc/Basic je reçois une erreur 404 page. Quand je vais au http://www.blah.com/Service.svc?wsdl, je vois mes wsdl et mes 3 terminaux au bas de la page. Dois-je être en mesure d'accéder aux autres points de terminaison via leur adresse? J'ai un client qui utilise Axis2 pour accéder à nos services et je voudrais utiliser plusieurs points de terminaison pour différents clients. Je sais que je peux ajouter ceci au comportement serivce:

<behavior name="MyServiceTypeBehavior"> 
    <serviceMetadata httpGetEnabled="true" httpGetUrl="Basic" /> 
    <serviceDebug includeExceptionDetailInFaults="true" /> 
    <dataContractSerializer maxItemsInObjectGraph="2147483646"/> 
</behavior> 

Mais je dois créer une entrée de service pour chaque point final, non? Devrais-je même craindre de pouvoir accéder aux points de terminaison via une URL?

Merci

Daniel

Répondre

4

Je pense que vous pourriez être trop penser cela. Le WSDL spécifiera tous les points de terminaison et leurs stratégies. Les clients peuvent spécifier quel point de terminaison utiliser pour la communication.

Vous n'avez pas besoin de naviguer vers l'URL du noeud final.

+0

Vous avez raison! J'étais trop penser. J'apprécie la réponse! Daniel – DDiVita

Questions connexes