1

私はhttps://apps.facebook.com/EXAMPLEで利用できるように、FacebookアプリのキャンバスにFacebookアプリhttps://example.comを埋め込んでいます。私のアプリケーションは、https://example.com/messages/123のようなリンクを含む通知電子メールを送信し、そのページをFacebookキャンバスに埋め込む必要があります。これをどのように達成するのですか?私の現在の考え:Facebookキャンバスアプリへのディープリンク

  1. ユーザーがsigned_request parameter
  2. アプリケーションがユーザーがhttps://example.com/messages/123 URLを見て、あるrequested_pageパラメータのhttps://apps.facebook.com/EXAMPLE/?requested_page=/messages/123
  3. アプリケーションのチェックにユーザーをリダイレクトし、このページに
  4. をリダイレクトするためのhttps://example.com/messages/123
  5. アプリケーションのチェックを開きますキャンバスに埋め込む

これは良いパターンがありますか?

(Ruby on Railsにして)私の最終作業溶液

  1. アプリはキャンバスに埋め込まれている場合、ユーザーは、クライアント側のhttps://example.com/messages/123
  2. アプリケーションのチェックを開きます。

    if(window == top){ 
        top.location = "https://apps.facebook.com/#{Settings.facebook.app_id}#{request.fullpath}"; 
    } 
    
  3. ユーザーはhttps://apps.facebook.com/EXAMPLE/messages/123

  4. にリダイレクトされています signed_request本( https://github.com/dekart/facebooker2/blob/master/lib/facebooker2/rack/post_canvas.rbから借用コードと考え)である場合、ミドルウェアは GETPOSTを変換10
  5. アプリケーション
  6. アプリケーションは、私はちょうどを指すようにリンクを更新したいfb_graph宝石

    FbGraph::Auth.new(app_id, app_secret, :signed_request => params[:signed_request]) 
    

答えて

0

signed_requestを解析http://apps.facebook/example/messages/123がオフになっています。

認証を確認するときは、認証/ログイン後に同じページにリダイレクトを設定するだけです。

理由を問わず、複数のページにユーザーをリダイレクトするのは良い方法ではありません。

+0

私はhttps://apps.facebook/example/messages/123にリンクすると、https://example.com/messages/123がPOSTリクエストで開かれます。これは、requested_pa​​geパラメータを使用する方が良いかもしれないと思った理由です... – lacco

関連する問題