WCF и SSL - ошибка не найдена в конечной точке, 404 - PullRequest
2 голосов
/ 12 мая 2011

Пожалуйста, о, пожалуйста, пожалуйста, помогите !!!: -)

Я пытаюсь протестировать WCF с SSL и, похоже, что-то не хватает.Я сделал кучу поиска и не могу найти то, что мне не хватает в конфигурации.У меня есть базовая служба WCF, размещенная в IIS на Windows 7 с самозаверяющим сертификатом.У меня также есть тестовое клиентское веб-приложение, вызывающее эту службу WCF.

Я получаю следующую ошибку в тестовом клиенте:

There was no endpoint listening at https://<url>/WcfAuthTest/Service1.svc that could accept the message.

Я могу перейти к службе в браузере и получитьстандартная автоматически генерируемая страница для службы SOAP.

Вот конфигурация для службы WCF:

<system.serviceModel>
<bindings>
  <wsHttpBinding>
    <binding name="wsSecureBinding">
      <security mode="Transport">
        <transport clientCredentialType="None" />
      </security>
    </binding>
  </wsHttpBinding>
</bindings>

<behaviors>
  <serviceBehaviors>
    <behavior name="wsSecureBehavior">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="true" />
    </behavior>
    <behavior name="">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>
  </serviceBehaviors>
</behaviors>

<services>
  <service behaviorConfiguration="wsSecureBehavior" name="Service1">
    <endpoint address="" binding="wsHttpBinding" bindingConfiguration="wsSecureBinding" name="wsService1" contract="WcfAuthTest.IService1" />
    <endpoint address="mex" binding="mexHttpsBinding" bindingConfiguration="" name="MexHttpsBindingEndpoint" contract="IMetadataExchange" />
  </service>
</services>

<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />

Конфигурация клиента:

<system.serviceModel>
<bindings>
  <wsHttpBinding>
    <binding name="wsTestBinding" closeTimeout="00:01:00" openTimeout="00:01:00"
      receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false"
      transactionFlow="false" hostNameComparisonMode="StrongWildcard"
      maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text"
      textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
      <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
      <reliableSession ordered="true" inactivityTimeout="00:10:00"
        enabled="false" />
      <security mode="Transport">
        <transport clientCredentialType="None" proxyCredentialType="None"
          realm="" />
      </security>
    </binding>
  </wsHttpBinding>
</bindings>
<client>
  <endpoint address="https://<url>/WcfAuthTest/Service1.svc"
    binding="wsHttpBinding" bindingConfiguration="wsTestBinding"
    contract="ServiceReference1.IService1" name="wsTestBinding" />
</client>

Ответы [ 2 ]

0 голосов
/ 19 декабря 2012

В конце вашей конфигурации у вас есть:

<endpoint address="https://<url>/WcfAuthTest/Service1.svc"
binding="wsHttpBinding" bindingConfiguration="wsTestBinding"
contract="ServiceReference1.IService1" name="wsTestBinding" />

<url> похоже, что оно начинается, но никогда не заканчивается.

0 голосов
/ 06 сентября 2011

Привет, я знаю, что прошло много времени с тех пор, как ты задал этот вопрос.

У меня похожие проблемы с WCF и SSL, и я подумал, что вы можете решить эту проблему, установив свойство в свойствах службы httpsGetEnabled = "true"

установка этого свойства позволила мне перейти к следующему этапу проблем:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...