Мне пришлось изменить службу wcf, которую я запускал на консольном приложении, в https из-за проблемы со смешанной блокировкой контента в firefox.Изменение wcf-сервиса с Http на https делает его недоступным
Это конфиг:
<services>
<service name="ServiceHost.Services.BiometricCaptureService" behaviorConfiguration="Default">
<endpoint address="rest" behaviorConfiguration="CorsBehavior" binding="webHttpBinding" bindingConfiguration="httpsBinding" contract="ServiceHost.IServices.IBiometricCaptureService"/>
<endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="https://localhost:8502/biometrics/biometricscaptureservice.svc"/>
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="CorsBehavior">
<webHttp/>
<crossOriginResourceSharingBehavior/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="Default">
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<extensions>
<behaviorExtensions>
<add name="crossOriginResourceSharingBehavior" type="ServiceHost.Utility.CORSBehaviorExtensionElement, ServiceHost, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
</behaviorExtensions>
</extensions>
<bindings>
<webHttpBinding>
<binding name="httpsBinding" maxReceivedMessageSize="2147483647">
<security mode="Transport">
<transport clientCredentialType="None" proxyCredentialType="None" realm="" />
</security>
<readerQuotas maxStringContentLength="2147483647" />
</binding>
</webHttpBinding>
</bindings>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
Запуск службы не бросать какие-либо ошибки с этой конфигурацией, но я не могу ударить по конечной точке больше.
Единственной ошибкой, которую я смог получить, было следующее: «Не удалось прочитать данные из транспортного соединения: существующее соединение было принудительно закрыто удаленным хостом».
Может ли кто-нибудь увидеть какие-либо проблемы с этим?
Попробуйте добавить 'System.Net.ServicePointManager.ServerCertificateValidationCallback = ((отправитель, сертификат, цепь, sslPolicyErrors) => правда)' в приложении консоли –