Проблема цикла перенаправления в приложении facebook iframe

Я делаю приложение IFrame для facebook.

Проблема в том, что любая ссылка внутри вызывает цикл перенаправления.

Ссылка: http://mydomain/mypage?fb_sig=[what I got from $_GET['fb_sig']] (для проверки я ссылаюсь на ту же страницу, с которой загружается мой загруженный холст)

когда я нажимаю на него, мой сервер возвращает:

<script type="text/javascript">
top.location.href = "http://www.facebook.com/login.php?api_key=5dc632fcef992470341178f492f79b93&v=1.0&next=http%3A%2F%2Fthiismydomain%2Ffacebook%2F%3Ffb_sig%3D96a5c47f133eadcfbba4abf82e5311e0%26page%3D1";
</script>

затем он переходит на соответствующую страницу, и facebook возвращается

Location: http://thisismydomain/facebook/?fb_sig=96a5c47f133eadcfbba4abf82e5311e0&page=1&auth_token=ce4cf4968f91cace5b3e915f5b658984

затем мой сервер отвечает

<script type="text/javascript">
top.location.href = "http://www.facebook.com/login.php?api_key=5dc632fcef992470341178f492f79b93&v=1.0&next=http%3A%2F%2Fthisismydomain%2Ffacebook%2F%3Ffb_sig%3D96a5c47f133eadcfbba4abf82e5311e0%26page%3D1%26auth_token%3Dce4cf4968f91cace5b3e915f5b658984";
</script>

и обратно, фейсбук отвечает:

Location: http://thisismydomain/facebook/?fb_sig=96a5c47f133eadcfbba4abf82e5311e0&page=1&auth_token=ce4cf4968f91cace5b3e915f5b658984&auth_token=77df653b7949ca39c1a226c82cce8add

и так продолжается и без конца.

Должен ли я сказать, что этот ответ перенаправления с моего сервера генерируется автоматически (скорее всего, моя библиотека php facebook)

У меня больше нет идей, почему это происходит. Любые идеи?


person Sniff    schedule 06.02.2010    source источник


Ответы (2)


У меня была аналогичная проблема, когда getSession() ничего не возвращал и, таким образом, отправлял меня в бесконечный цикл перенаправления. Я решил это, включив OAuth 2.0 в настройках приложения, как указано здесь:

http://forum.developers.facebook.net/viewtopic.php?id=64656

person Magicgunnar    schedule 18.04.2011

Хорошо, если вы признаете проблему, вот решение:

fb_sig — не единственный параметр, который нужно передавать вручную. Следует передать весь fb_sig*. Узнайте больше на этой прекрасной странице http://www.foobots.net/breakouts.html.

person Sniff    schedule 06.02.2010