2015-01-14 5 views
0

У меня есть вызов jquery Ajax, пытающийся вызвать веб-метод. Он работает для любой среды, но не раз развертывается на производстве. Единственное различие заключается в использовании HTTPS SSL.Ajax call over https SSL

Вот мой код Аякса

$.ajax({ 
     type: "POST", 
     url: "https://www.mywebsite.ca/assure/demandeconfirmee.aspx/EnvoyerAuxAssureurs", 
     data: "{}", 
     contentType: "application/json; charset=utf-8", 
     dataType: 'text', 
     success: function (msg) { 
     console.log(msg); 
     }, 
    error: function (xhr, ajaxOptions, thrownError) { 
     console.log(xhr.status); 
     console.log(thrownError); 
     } 
    }); 

и мой WebMethod

[WebMethod] 
public static string EnvoyerAuxAssureurs() 
{ 
    return "YanTest"; 
} 

Выполнение Аякса над HTTPS должен быть прямой нет ?!

на каждую среду, которую я тестирую, я получаю «yanTest» в ответ.

Однако, по протоколу HTTPS (производство) Я получаю следующий ответ (так называемый URL возвращается в comment..with HTTP вместо HTTPS):

<html><head><title></title><!-- <script language="javascript">window.location.replace("http://www.mywebsite.ca/assure/demandeconfirmee.aspx/EnvoyerAuxAssureurs");</script> --></head><body></body></html> 

Любой вход?

!!! Проблема решена !!!! Перенаправление было вызвано моим модулем WebPageSecurity.dll, который вызывал перенаправление, я добавил следующее в свой web.config, и теперь он работает!

<secureWebPages mode="On" maintainPath="True" warningBypassMode="AlwaysBypass" bypassQueryParamName="BypassSecurityWarning" ignoreHandlers="WithStandardExtensions"> 
<files> 
    <add path="Assure/DemandeConfirmee.aspx/EnvoyerAuxAssureurs" secure="Ignore" /> 
</files> 

+0

Нет ли перенаправления на месте? Здесь нет стандартной проблемы. Это нечто специфическое для вашей инфраструктуры. –

+0

Это то, что я думал .... однако я не могу найти переадресацию в рамках ... Почему бы это сделать только по https ... –

+0

Возможно, потому что вы не вошли? – spender

ответ

0

!!! Проблема решена !!!! Перенаправление было вызвано моим модулем WebPageSecurity.dll, который вызывал перенаправление, я добавил следующее к моему web.config, и теперь он работает!

<secureWebPages mode="On" maintainPath="True" warningBypassMode="AlwaysBypass" bypassQueryParamName="BypassSecurityWarning" ignoreHandlers="WithStandardExtensions"> 
<files> 
    <add path="Assure/DemandeConfirmee.aspx/EnvoyerAuxAssureurs" secure="Ignore" /> 
</files>