2011-10-05 4 views
0

FacebookのコールバックURLに問題があります。私はfbgraph gemをRails 3.0で使用しています。facebookアクセストークンでエラーが発生しました

私のタブアプリケーションでは、拡張アクセス許可が必要です。コールバックでは、コードパラメータとaccess_tokenを待ちます。

このコードは、fbgraph公式GITリポジトリから抽出します。

def authorize 
     begin 
      @auth.client.authorization_code = params[:code] 
#In access_token line should return me access__token but throw a error message (see below) 
      access_token = @auth.client.access_token! # => Rack::OAuth2::AccessToken 
      @facebook_user = FbGraph::User.me(access_token).fetch # => FbGraph::User 
    #MORE CODE WITHOUT IMPORTANCE 
      redirect_to :controller => "dashboard", :action => "index" 
     rescue Exception => e 
      logger.info(e.message) 
     end 
     end 

投げ、このエラーメッセージ:

ラック:: OAuthの::クライアント::エラー#=> @status = 400、メッセージ=> URI

をリダイレクト行方不明私はすぐに助けを必要としてください。すみません、事前に感謝します

答えて

1

私は似ているfb_graphの宝石を使用しています。

client.redirect_uri = "http://your.callback.uri" 
client.authorization_code = params[:code] 
access_token = client.access_token! 

更新

は、私はあなたがこれらの2行を交換する必要があると思うfbgraph宝石のドキュメントを見て - あなたはまた、コールバックURIを指定する必要がありaccess_tokenはを得るためには、これはfb_graphバージョンです:私が見

access_token = @auth.client.authorization.process_callback(params[:code], :redirect_uri => callback_url) 

正直に言うと:これにより

@auth.client.authorization_code = params[:code] 
access_token = @auth.client.access_token! 

tはfbgraphの宝石を使っていましたが、ドキュメンテーションは非常に悪かったので、代わりにfb_graphに切り替えました。これは似ていて、実際にはいくつかの役に立つ例がドキュメントにあります。

+0

ありがとう – maxiperez

関連する問題