Проблема службы WCF с SSL - PullRequest
       0

Проблема службы WCF с SSL

1 голос
/ 25 февраля 2010

У меня проблема с вызовом службы WCf через SSL из консольного приложения. Служба WCF работает на Windows Server 2003. Это простой математический сервис. Служба WCF и клиент находятся на одном компьютере. Это тест, я звоню в сервис на localhost.

web.confing

<?xml version="1.0"?>
<configuration>
    <system.serviceModel>
        <services>
            <service name="Service.CalculatorService" behaviorConfiguration="CalculatorServiceBehavior">
                <endpoint address="https://machineName/https/calculatorservice.svc" name="myEndpoint" binding="basicHttpBinding" 
                  bindingConfiguration="Binding1" contract="Service.ICalculator"/>
            </service>
        </services>
        <bindings>
            <basicHttpBinding>
                <binding name="Binding1">
                    <security mode="Transport">
                        <transport clientCredentialType="None"/>
                    </security>
                </binding>
            </basicHttpBinding>
        </bindings>
        <behaviors>
   <serviceBehaviors>
    <behavior name="CalculatorServiceBehavior">
      <serviceMetadata httpsGetEnabled="true"
        httpsGetUrl="https://machineName/https/calculatorservice.svc" />
     <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>
   </serviceBehaviors>
  </behaviors>
    </system.serviceModel>
    <system.web>
        <compilation debug="true"/></system.web></configuration>

Если я вызываю службу из Visual Studio, например: http://localhost:2039/CalculatorService.svc Я получаю ошибку: Протокол 'https' не поддерживается. Я думаю, что все в порядке.

Но если я вызываю сервис из браузера, я получаю сообщение об ошибке:

Уже существует регистрация для URI 'https://machineName/https/CalculatorService.svc'.

Что плохого? Кто-нибудь может мне помочь, спасибо.

Ответы [ 2 ]

1 голос
/ 26 февраля 2010

Удалите атрибут «адрес» из элемента конечной точки - когда вы размещаете в IIS, он автоматически предоставляет это.

0 голосов
/ 19 ноября 2013

Сервер разработки Visual Studio не поддерживает https.Вам необходимо разместить свой сервис в IIS http://msdn.microsoft.com/en-us/library/vstudio/aa751792(v=vs.100).aspx

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