Frage

Mein 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

ich ging zu /oauth/start/ und erfolgreich angemeldet und meine App zugelassen. Anschließend leitete Facebook mich wieder zu meiner App um, was diesen Fehler ergab:

Nomethoderror in oauthcontroller#callback

undefined method `encode_json' for true:TrueClass

Wir alle hassen Fehler und ich auch. Wie kann ich das beheben? Vielen Dank.

War es hilfreich?

Lösung

Das info! Methode gibt eine Instanz von zurück FBGraph::Result, Sie müssen anrufen data darauf, damit Schienen es in JSON codieren können. Der folgende Code funktioniert gut für mich:

render :json => client.selection.me.info!.data
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top