Question

Mon code:

  def start
    redirect_to client.authorization.authorize_url(:redirect_uri => callback_oauth_url,
                                                   :scope => "email,user_birthday,user_hometown,user_interests,user_location,user_notes,user_status,sms,publish_stream")
  end

  def callback
    access_token = client.authorization.process_callback params[:code], :redirect_uri => callback_oauth_url
    session[:access_token] = access_token
    render :json => client.selection.me.info! # <-- HERE IS THE ERROR >.<
  end

Je suis allé à /oauth/start/ et avec succès signé et a permis à mon application. Par la suite, Facebook me redirigés vers mon application, ce qui a donné cette erreur:

NoMethodError dans OauthController # rappel

undefined method `encode_json' for true:TrueClass

toutes les erreurs de haine et moi aussi Comment puis-je résoudre ce problème? Merci.

Était-ce utile?

La solution

Les rendements de la méthode de info! une instance de FBGraph::Result, vous devez appeler data sur pour que Rails peut encoder en JSON. Le code suivant fonctionne bien pour moi:

render :json => client.selection.me.info!.data
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top