Это то, что мы сделали для IE.
Если у вас есть контроль над целевым доменом, разместите там (статический) html-файл. Включите HTML, используя iframe.
Теперь этот iframe действительно имеет доступ к локальному домену, поэтому вы можете общаться между родительским и дочерним фреймами, чтобы получить то, что вам нужно.
Это сработало намного лучше, чем XDomainRequest для нас.
window.postMessage - лучший способ установить связь:
Но я почти уверен, что начал работать только с IE8. Если вам также требуются более старые браузеры, вы должны использовать другой хак.
В нашем случае это была наша трехслойная система:
- CORS, для браузеров, которые его поддерживают
- iframe & window.postMessage как основной запасной вариант
- Скрипт прокси на стороне сервера в качестве вторичного запасного варианта
Все эти опции работают хорошо, надежны и не слишком похожи на взлом. Вторичный запасной вариант почти не использовался.
Имейте в виду, что заголовок «Аутентификация» является особенным, и я не удивлюсь, если он заблокирован при определенных обстоятельствах. Мы добавили пользовательский заголовок «X-Authenticate», так как он все время проходил.