Приложение Facebook iFrame: как передать данные из строки запроса URL - PullRequest
4 голосов
/ 04 июля 2010

У меня есть приложение Facebook, в котором есть галерея изображений. Это встроенный в Flex 4. Я хочу разрешить пользователям ссылаться на определенное изображение.

Как это можно сделать?

Единственный способ увидеть, как это делается, - добавить переменную GET, например & my_picture = asd.jpg, в URL страницы Facebook, но я не знаю, как это прочитать из iFrame.

Ответы [ 2 ]

10 голосов
/ 04 июля 2010

Да, вы можете добавить параметр в строку запроса для этого:

http://app.facebook.com/yourapp?myparam=1234

Тогда ваше приложение будет называться так:

http://domainwhereyouhostyourapp.com/your_fb_app/index.php?myparam=1234

Некоторые другие параметры также передаются через Facebook, большинство из них связаны с токенами авторизации и т. Д. Они имеют префикс "fb_" для предотвращения конфликтов имен.

В вашем index.php (или что вы используете) прочитайте интересующий вас параметр get и передайте их в ваш swf как обычно.

4 голосов
/ 13 января 2011

Что еще хорошо в Facebook, так это то, что после вашего ../appname/{things-beyond-your-app-name} URL-адрес [server] размещается ВСЕ, так что даже .htaccess можно использовать. ;)

Вот так ...

http://apps.facebook.com/YOURAPPNAME/a/b/c.htm

Для приложения, размещенного на моем сервере:

http://example.com/APPSHOSTEDPATH/

и с помощью этого однострочного файла, включенного в файл .htaccess моего расположения в:

http://example.com/APPSHOSTEDPATH/

где файл .htaccess содержит (среди прочих стандартных) строк ...

Я могу поставить что-то вроде:

RewriteRule ^(.*)$ /myRedirectedPath/$1 [L,R=301]

Итак, если человек идет к: http://apps.facebook.com/YOURAPPNAME/a/b/c.htm (как в приведенном выше примере)

Они останутся там и получат доступ:

http://example.com/myRedirectedPath/a/b/c.htm

(довольно мило, а?);)

Прикольные вещи ... хотели, чтобы вы знали, что есть больше возможностей, чем у $_GET.

...