2011-06-26 17 views
4

iframe canvasメソッドを使用してFacebookアプリを実装すると、私は奇妙なバーハビールに遭遇しました。oauthがFacebookにリダイレクトされないiframe

http://developers.facebook.com/docs/guides/canvas/のチュートリアルに従っていますが、これまでのところうまく機能しています。

私は(チュートリアルが言うように)真偽がある送信するためのページ:私はアプリを受け入れ、それは私の個人データへのアクセスを許可する場合

https://www.facebook.com/dialog/oauth?client_id=138548612888445&redirect_uri=http://localhost:8080/test/facebook/return.jsfしかし

、私がリダイレクトされています私は一番上のフレームではなく、デフォルトのFacebookの枠内に表示されるように、私のURLを望んでいないしかし

+--------------------------------------------------+ 
| My Content          | 
| http://localhost:8080/test/facebook/return.jsf | 
| ?code=... 
+--------------------------------------------------+ 

直接その後、このようになります一番上のURLとして戻りページへ
+-------------------------------------------+ 
| Facebook header       | 
+--------------------------+----------------+ 
| My Content    | Facebook right | 
|       | column   | 
+--------------------------+----------------+ 

奇妙なことがある:ユーザーが初めてアプリを承認する必要がある場合にのみ発生 - 私はコンテンツがインラインフレームの内側に正しく表示されているapps.facebook.com/fooappを呼び出すとき、その後。

私は間違っていますか?

答えて

2

あなたのFacebookのアプリのURLをリダイレクトURIに設定します。あるいは、return.jsfで何をする必要があれば何でもして、あなたのFacebookのアプリのURLに転送してください。

1

あなたが使用している場合:

<script> top.location.href='$url'</script> 

を私がしたように、何を変更する必要があることはself.location.hrefからtop.location.hrefです。

関連する問題