Sto cercando di implementare l'autenticazione di Facebook per un'app con Warden, dopo che l'utente ha autorizzato Facebook e reindirizza alla mia callback dell'app con il token ottengo 400 mentre consumo l'API. La mia strategia warden è questo:"Errore durante la convalida del segreto del client." 404 con Facebook Oauth e ruby
class Facebook < Warden::Strategies::Base
def client
@client ||= OAuth2::Client.new MyApp::Facebook::AppID, MyApp::Facebook::AppSecret, :site => 'https://graph.facebook.com'
end
def params
@params ||= Rack::Utils.parse_query(request.query_string)
end
def authorize_url
client.web_server.authorize_url :redirect_uri => request.url, :scope => 'email,publish_stream'
end
def authenticate!
throw(:halt, [302, {'Location' => authorize_url}, []]) unless params['code']
facebook = client.web_server.get_access_token params['code'], :redirect_uri => request.url
rescue OAuth2::HTTPError => e
puts e.response.body
end
end
Strategies.add :facebook, Facebook
Il risultato della stampa del corpo della risposta è questa:
{"error":{"type":"OAuthException","message":"Error validating client secret."}}
Io sono abbastanza shure l'id app e app segreto sono quelli forniti da FB.
Grazie.
Per me, stava usando il nome della variabile errato dal mio file di configurazione: - / –