Должен ли WSDl быть доступен только через ".svc? Wsdl"? У меня есть служба, которая имеет несколько конечных точек. Например (в файле web.config):
<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>
Если я перехожу к: http://www.blah.com/Service.svc/Basic
, я получаю ошибку 404 страницы. Когда я перехожу на http://www.blah.com/Service.svc?wsdl
, я вижу свои wsdl и мои 3 конечные точки внизу страницы. Могу ли я получить доступ к другим конечным точкам по их адресу? У меня есть клиент, который использует Axis2 для доступа к нашим услугам, и я хотел бы использовать несколько конечных точек для разных клиентов. Я знаю, что могу добавить это к поведению serivce:
<behavior name="MyServiceTypeBehavior">
<serviceMetadata httpGetEnabled="true" httpGetUrl="Basic" />
<serviceDebug includeExceptionDetailInFaults="true" />
<dataContractSerializer maxItemsInObjectGraph="2147483646"/>
</behavior>
Но мне нужно было бы создать служебную запись для каждой конечной точки, верно? Должен ли я вообще беспокоиться о возможности доступа к конечным точкам через URL?
Спасибо
Daniel