Междоменный запрос с HTTP на HTTPS немедленно прерывается

Я пытаюсь выполнить вызовы веб-службы Cross -Domain со страницы HTTP в службу HTTPS.

Я настроил правильные заголовки CORS на сервере (, он работает с HTTP -HTTP и HTTPS -HTTPS ).

Это действительно работает, если я изменяю запросы на JSONp.

Что я вижу в Chrome и Firefox, так это то, что запрос HTTPS никогда не отправляется , он немедленно прерывается , и сервер никогда не видит запрос.

Стоит отметить, что предварительный запрос OPTIONSпрерывается (и не достигает сервера ).

Я не могу найти ни одного источника, объясняющего, что это действительно невозможно (HTTP на HTTPS )и еще лучше :объясняет почему . Я понимаю, что с HTTPS на HTTP небезопасно, но с другой стороны все должно быть в порядке, верно? Мне это кажется глупым, потому что JSONp работает (, но беспорядочно ).

примечания

У меня также установлено withCredentialsна true, и я отправляю несколько пользовательских заголовков и пользовательскийContent-Type:application/json

Я использую обычный XMLHTTPRequest с откатом к JSONp для IE<=9

21
задан Halcyon 5 August 2012 в 12:48
поделиться