Междоменный код JavaScript с одноуровневыми поддоменами

У меня есть два набора настроек веб-приложений:

david .example.com и john .example.com

Дэвид открывает новое окно Джону:

window.open('john.example.com');

Теперь Джон хотел бы вернуть элемент ввода для Дэвида:

$("#input", window.opener.document).val("Hello David.");

Моя проблема в том, что это не работает в большинстве современных браузеров из-за безопасности междоменного сценария. Я также безуспешно пытался установить document.domain на разные комбинации доменов как на Дэвиде, так и на Джоне.

Это работает только тогда, когда Джон находится на example.com и оба имеют document.domain , установленное на example.com . Однако example.com является нашим основным веб-сайтом и не доступен в качестве решения.

Итак, есть ли способ сделать приведенный выше пример, при этом решение будет работать во всех современных браузерах, заботящихся о безопасности?

Примечания

  • Я контролирую example.com и все его поддомены.
  • Дэвид и Джон являются отдельными веб-приложениями и не могут размещаться в одном поддомене.
5
задан Peter Mortensen 6 April 2011 в 12:42
поделиться