Мы используем раскрывающийся список AJAX Cascading и функцию автозаполнения с Restful WebService Services, предоставляющими данные. С одной конечной точкой (незащищенной) все работало нормально, пока мы не попробовали ту же самую веб-страницу с https. Наше веб-приложение должно поддерживать оба. Наших из очень немногих статей / блогов по этому вопросу я нашел 2, что относится к моим требованиям.
- http://blog.abstractlabs.net/2009/02/ajax-wcf-services-and-httphttps.html
- http://www.mydotnetworld.com/post/2008/10/18/Use-a-WCF-Service-with-HTTP-and-HTTPS-in-C.aspx
Я следовал тому же шаблону, добавил 2 конечные точки, предполагая, что WCF подберет соответствующую конечную точку, просматривая протокол HTTP или HTTPS. Работал как чудо на моей машине разработчика (XP-IIS5) и 1 Server 2003R2 (IIS6), однако работал на производственном сервере 2003-IIS6. Веб-сайт в IIS точно такой же (включая разрешение и т. Д.).
Выдает ошибку - Ошибка 500 (Не удалось найти базовый адрес, который соответствует схеме https для конечной точки с привязкой WebHttpBinding. Зарегистрированные схемы базовых адресов: [http] ..)
Вот пример конфигурации (игнорируйте опечатки)
<system.serviceModel>
<bindings>
<webHttpBinding>
<binding name="SecureBinding">
<security mode="Transport"/>
</binding>
</webHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="SearchServiceAspNetAjaxBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<services>
<service name="SearchService">
<endpoint address="" behaviorConfiguration="SearchServiceAspNetAjaxBehavior"
binding="webHttpBinding" contract="SearchServiceContract" />
<endpoint address="" behaviorConfiguration="SearchServiceAspNetAjaxBehavior"
binding="webHttpBinding" bindingConfiguration="SecureBinding" contract="SearchServiceContract" />
</service>
</services>
</system.serviceModel>
Любая помощь по этому вопросу высоко ценится?
Спасибо
KSS