1

シンプルな Facebook ページ タブ アプリケーションをセットアップしようとしています。すでにfacebookグラフからaccess_tokenをレスポンスとして取得し、正しいと思われる状態に到達しています。私の問題は、認証後、Facebook ページ タブの URL にリダイレクトされますが、Facebook ドメインの外部にあり、ユーザーが選択したページ タブにはリダイレクトされないことです。

私のアプリケーション情報:



    Display Name:MyContest
    Namespace:mygoodcontest
    Contact Email:myemail@something.com
    App Domains: [ empty ]

    Page Tab Name: Contest!
    Page Tab URL:http://[mystaticip]:8080/facebookContest/app/index.do
    Secure Page Tab URL:https://[mystaticip]:8443/facebookContest/app/index.do
    Page Tab Edit URL:https://[mystaticip]:8443/facebookContest/app/admin/

このスレッドは私の問題に正確に関連しているようで、無関係に回答されているようです。 認証後、Facebookページのタブにリダイレクト

このスレッドは、私が抱えているのと同じ問題ですが、キャンバスアプリケーションにあります。Facebookページ タブ アプリケーションではありません Facebook キャンバス アプリ「redirect_uri」は、承認と認証後に iframe から抜け出します

私が求めているのは、承認が成功した後、認証されたユーザーをFacebookページタブ内にリダイレクトすることです。

ありがとうございました!

4

2 に答える 2

0

ユーザーを認証するとき、ユーザーredirect_uriをリダイレクトしたい URL でパラメーターを渡すことができます。そこにタブの URL を入力してみてください。それがうまくいかない場合 (おそらく uri がアプリに属していないというエラーが表示されるため)、Facebook 以外のページからタブにリダイレクトするだけで済みます。

于 2013-01-21T14:40:58.517 に答える
0

誰かが私と同じ立場にいる場合、@darvex の助けを借りて私がなんとかしたことを以下に示します。問題は、facebook には redirect_url パラメータが確実に必要だということです。また、redirect_url パラメータは、編集ページ オプションのページ タブ URL と同じである必要があります。だから私が理解したのは、FacebookはFacebookの外部のすべてのユーザーをリダイレクトするということです(この場合、「Facebookの外部」はサーバー、ページを意味します)。次に、このhttp GETを処理し、@darvexが言ったように、リクエストをFacebookページにリダイレクトする必要がありますタブで JavaScript コマンドを使用します。

www.facebook.com/mypage/app_12345678 などのFacebookページタブにリダイレクトすると、魔法が起こります。誰かがあなたのページタブをリクエストしたため、リクエストがハンドルに届きます。しかし、今回はFacebookがこの特定のユーザーがアプリを認証したことを登録したため、その時点で処理されているhttp POSTにはsigned_requestパラメータがあり、ブレーク/デコード(base64)するとアクセストークン内に見つかりますあなたが必要とすること。その時点で、あなたのページ タブ (Facebook 内) を見ているログイン ユーザーと、トリックを実行するためのアクセス トークンがあります。

これがベストプラクティスかどうかはわかりませんが、うまくいくようです。誰かがより良いアプローチを持っている場合は、遠慮なく投稿してください。

皆さん、ありがとうございました

于 2013-01-24T08:13:08.523 に答える