私はdevise/omniauthを設定しました。今はFacebookのjavascript SDKを使用してログイン/許可を求め、omniauthコールバックコントローラにルーティングします。Facebookからの認証コードの取得方法javascript SDK
これは私が持っているものです(coffeescript)。
$('#fb-connect').live 'click', ->
FB.login ((response) ->
if response.authResponse
window.location = "https://stackoverflow.com/users/auth/facebook/callback?code=" + response.authResponse.signedRequest
else
console.log "User cancelled login or did not fully authorize."
), scope: "email, offline_access"
false
しかし、私はInvalid verification code format
エラーが発生しています。コードparamが署名付きリクエスト以外の何かを期待しているからです。
更新
だから私は認可コードに渡す必要があるように見えますが、私はどのように見つけることができません。 direct url exampleは、response_type = codeを指定して認証コードを取得できることを示していますが、FB.apiを使用してresponse_type = codeを実行する方法はわかりません。何か案は?
http://www.facebook.com/dialog/oauth/?
scope=email,user_birthday&
client_id=123050457758183&
redirect_uri=http://www.example.com/response&
response_type=code
これをURLに追加されたあなたの元の質問への答えに私はomniauth 0.3.2のための唯一の真実であると、後(で考えます私が0.3.0にあった時) – CodeWombat