Общение с родителями (страница Facebook FBML) из iFrame (локальная страница)

В настоящее время я разрабатываю приложение для Facebook, в котором есть iFrame. IFrame загружает апплет Java (так что страница FBML - это просто оболочка для нижнего колонтитула верхнего колонтитула и функций FBML).

Текущая ситуация, например, заключается в том, что у Java-апплета есть событие (пользователь завершил игру), и он выполняет вызов javascript на странице iFrame. Затем ему нужно вызвать javascript в родительском окне (Facebook.streamPublish ()), чтобы пользователь получил возможность опубликовать свой счет / событие / победу / поражение, что угодно.

Код iFrame на странице FBML:

<fb:iframe id='appletIframe' frameborder='0' resizable='true' scrolling = 'no' name='appletIframe' src='appletPage.php'></fb:iframe>

Каждый раз, когда я пытаюсь связаться с родителем, мне отказывают в доступе, потому что это перекрестный вызов. Интересно, возможно ли с помощью Facebook.connect или какой-либо другой техники звонить родителю или есть какой-либо другой способ. Если пользователь завершает игру, должна быть минимальная задержка между вызовом iFrame и родительским вызовом.

Причина, по которой я использую апплет в iFrame, заключается в том, что апплет развертывается с помощью deployJava (класс, распространяемый Sun), и если я запустил его на странице Facebook FBML, класс навигатора Javascript будет добавлен (a_navigator), и он не будет запускаться.

Надеюсь, я был достаточно ясен в описании, у кого-нибудь есть идеи?

Заранее спасибо за помощь,

Майкл


person Talonzor    schedule 27.11.2009    source источник
comment
Невозможно получить доступ к родительской странице / окну, если ваш iframe находится в другом домене. Возможно, у facebook есть другой механизм, с помощью которого вы можете запустить streamPublish () ...   -  person James    schedule 28.11.2009
comment
Я боялся, что это будет невозможно, но спасибо, что забили последний гвоздь в гроб.   -  person Talonzor    schedule 30.11.2009


Ответы (2)


Здравствуйте, я только что столкнулся с этой проблемой и хотел сделать что-то вроде вас, и я почувствовал себя взломанным. Но я использовал его yourApplet.getAppletContext().showDocument(url,"_parent");. Это помогает мне перенаправить в другое окно, где у меня есть сценарий для публикации. В этом новом окне я есть кнопка для публикации истории через javascript. Эта кнопка может быть не обязательна

Важно использовать «_parent», чтобы вы могли перенаправить родительское окно.

Я хочу, чтобы это помогло

person Community    schedule 08.12.2009

старая проблема ... но вот очень хороший ресурс http://softwareas.com/cross-domain-communication-with-iframes

person Community    schedule 22.02.2011