2008-08-28 3 views
8

Вот моя проблема. Мне хотелось бы общаться между двумя веб-сайтами, и я ищу чистое решение. В текущем решении используется Javascript, но есть неприятные обходные пути из-за (понятных) межсайтовых скриптовых ограничений.Общайтесь между сайтами (используя Javascript или?)

На данный момент вебсайту открывает модальное окно, содержащее сайт B используя jQuery плагин под названием jqModal. Веб-сайт B выполняет некоторые работы и возвращает некоторые результаты веб-сайт A. Чтобы вернуть эту информацию, мы должны работать над ограничениями межсайтового скриптинга - сайт B создает iframe, который ссылается на страницу на на сайте A и включает в себя * идентификаторы фрагментов, содержащие возвращаемую информацию. IFrame опрошен вебсайту обнаружить возвращенную информацию. это common technique но Hacky.

Есть варианты, такие как CrossSite и я мог бы, возможно, использовать HTTP POST, с сайта B на вебсайту но я стараюсь чтобы избежать обновления страниц.

Есть ли у кого-нибудь альтернативы?

EDIT: Я бы хотел, чтобы вас не сэкономили на веб-сайт B.

ответ

5

Мое лучшее предложение было бы создать веб-сервиса на каждом сайте, что другие могли бы назвать с информацией, которую необходимо получить прошло. Если необходима безопасность, легко добавить в эту систему SSL-подобную схему аутентификации (или фактический SSL, если хотите), чтобы гарантировать, что только два сервера смогут разговаривать со своими соответствующими веб-службами.

Это позволит вам избежать хакерства, присущего любой схеме, которая включает в себя один сайт, открывающий окна на другом.

3

С JQuery новее, чем 1.2 вы можете использовать JSONP

0

@jmein - вы описали, как создать модальное всплывающее окно (именно это делает jqModal), однако вы пропустили, что содержимое модального окна обслуживается из другого домена. Эти два домена связаны с двумя отдельными компаниями, поэтому их нельзя комбинировать так, как вы описываете.

0

я верю @pat имел в виду эту

«По состоянию на JQuery 1.2, вы можете загрузить данные в формате JSON, расположенные на другом домене, если указан обратный вызов JSONP,» http://docs.jquery.com/Ajax/jQuery.getJSON#urldatacallback

Смежные вопросы