У меня есть сервис WCF, который мне нужен для запуска через SSL, я звоню по нему с веб-страницы (используя jQuery), которая может быть или не быть защищенной страницей.Проблема заключается в том, что если я позвоню с защищенной веб-страницы на моем сайте, вызов будет выполнен точно так, как я ожидаю ... однако, если я сделаю звонок с незащищенной страницы на моем сайте, на защищенную веб-службу(используя "https://";)) он возвращает нулевые данные (через Firebug). Все, что я пропустил? Это вообще возможно?
Вот конфигурация службы, которую я вызываю (яболее чем рады предоставить больше материала, если это необходимо):
<behaviors>
<endpointBehaviors>
<behavior name="AspNetAjaxBehavior">
<webHttp/>
</behavior>
</endpointBehaviors>
</behaviors>
<services>
<service name="ClientServices.Membership" behaviorConfiguration="ServiceGatewayBehavior">
<endpoint address="" behaviorConfiguration="AspNetAjaxBehavior" bindingConfiguration="SecureBinding"
binding="webHttpBinding" contract="ClientServices.Membership" />
</service>
</services>
<bindings>
<webHttpBinding>
<binding name="SecureBinding">
<security mode="Transport"/>
</binding>
</webHttpBinding>
</bindings>
Вот код, который вызывает службу:
$.ajax({
url: serviceUrl,
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: '{"review":{"Username":"' + username + '"}}',
success: function (data) {
$.log(data);
},
error: function (a, b, c) {
$.log(b);
},
cache: false
});
ОБНОВЛЕНИЕ
Если я изменю метод вызова службы на «GET» и вызову его напрямую через SSL, он будет работать нормально и выдаст ожидаемый jSon. Он находится только на незащищенной странице, где проблема сохраняется.