У меня возникают проблемы с отправкой JSONP-запросов с сайта HTTPS сайта на HTTP.
У меня есть (не локальная) тестовая среда поверх https (с действительным сертификатом), где я могу успешно запускать все эти кросс-сайты/ "кросс-протокол" (с предупреждениями, но без ошибок).
Выход консоли Javascript в Google Chrome:
The page at https://my.test.environment/ ran insecure content from http://non.secure.site/service?jsonCallback=jsonp1331132928704
Однако в процессе производства (в Google App Engine, subdomain appspot) Google Chrome блокирует все запросы, ожидающие подтверждения пользователя.
Выход консоли Javascript в Google Chrome (особое внимание уделяется [заблокирован]):
[blocked] The page at https://production.appspot.com/ ran insecure content from http://non.secure.site/service?jsonCallback=jsonp1331132928704
Я знаю, что я делаю, это не безопасно, но эти услуги предоставляются сторонними компаниями, и пока нет связи SSL. Я действительно смущен этим, потому что я не понимаю, почему работает (с предупреждениями) в тестовой среде, а не в apppot (Google App Engine).
Я попытался исследовать заголовки без успеха.
Заголовки тестовой среды:
Connection:Keep-Alive
Content-Encoding:gzip
Content-Language:es
Content-Length:2524
Content-Type:text/html;charset=utf-8
Date:Wed, 07 Mar 2012 15:48:30 GMT
Keep-Alive:timeout=15, max=100
Set-Cookie: cookie_info...
Vary:Accept-Encoding
Заголовки APPSpot:
access-control-allow-credentials:false
access-control-allow-origin:*
cache-control:no-cache, must-revalidate
content-encoding:gzip
content-length:47890
content-type:text/html; charset=utf-8
date:Wed, 07 Mar 2012 14:52:02 GMT
expires:Fri, 01 Jan 1990 00:00:00 GMT
pragma:no-cache
server:Google Frontend
set-cookie: coookie_info....
status:200 OK
vary:Accept-Encoding
version:HTTP/1.1
Я не знаю, почему это работает на тестовом envinroment, и тот же подход заблокирован на APPSpot Google Chrome.
Любые мысли?