Совместное использование ресурсов и файлов разных источников://

Я пишу приложение HTML5, которое собирает данные из нескольких разных источников с помощью JSONP. Все, что я делаю с GET, работает отлично. Теперь я пытаюсь опубликовать данные, и я столкнулся с интересной проблемой. Мне нужно отправлять данные из моего приложения в другое, где мое приложение работает с локальной машины. Я пытаюсь написать кросс-платформенное мобильное приложение (think Pulse / Flipboard), поэтому код всегда будет работать из локального источника. Моя мысль процесс был следующим:

все браузеры, на которые я ориентируюсь, основаны на webkit (iPad, Playbook, Android), поэтому мне интересно, есть ли какие-либо скрипы в том же коде политики origin, через который я могу прокрасться? Может быть, что-то с использованием iframe или postMessage?

2 ответов


Как оказалось, самый простой способ сделать это-опубликовать целевой url-адрес внутри iframe. Такая же политика происхождения в большинстве браузеров позволяет выполнять HTTP-сообщение из одного домена в другой несвязанный домен. Я решил проблему, добавив iframe на свою страницу, изначально настроенную на локальную страницу начальной загрузки. Поскольку эта страница была загружена из того же домена, я могу управлять ею с помощью скрипта. Я использовал это для публикации формы на моем целевом сайте и опросил результаты, чтобы определить, мой звонок удался. Это не элегантно, но работает.


эта библиотека Javascript почти наверняка поможет вам:

http://easyxdm.net/

easyXDM - это библиотека Javascript, которая позволяет вам, как разработчику легко обойти ограничение, установленное в место по той же политике происхождения, в поверните сделать его легким связывать и предоставление API javascript в разных доменах границы.

..

на ядре easyXDM обеспечивает транспортный стек, способный проходящий строковые сообщения между двумя windows, потребитель (основной документ) и провайдера (документ включено использование iframe). Это с помощью одного из нескольких доступных техники, всегда выбирающие самые эффективный для текущего браузера. Для всех реализаций transport стек предлагает двунаправленность, надежность, очередность и отправитель-проверка.