[Facebook] ページタブアプリ(iframe) でリダイレクト(redirect)できない問題と解決方法

Fri, June 1, 2012 - 1 min read

Facebook のページタブアプリ(iframe) にて、リダイレクト(redirect)処理を実行すると、画面が真っ白になって何も表示されない問題でハマりました。

■ サーバーの request/response ログ

HTTP/1.1 302 Moved Temporarily P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT" Location: https://www.facebook.com/pages/My-Page/xxxxxxxxxxxx?sk=app_xxxxxxxxxx Content-Type: text/html; charset=utf-8 X-UA-Compatible: IE=Edge Cache-Control: no-cache X-Request-Id: 8700a35ce62854a9d99abc225bbb9903 X-Runtime: 0.002538 Connection: close Server: thin 1.3.1 codename Triple Espresso
You are being redirected.

原因は、ifranme 内からリダイレクトを行なっているせいでした。

a タグに、target=“_top” を指定して、フレーム解除してやればOKです。

■ エラーで動かない例

Facebook Auth

■ 解決した例(target=“_top” を追加してる)

Facebook Auth

以上です。