Domanda

Il mio codice:

  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

Sono andato a /oauth/start/ e firmato con successo e ha permesso la mia app. In seguito, Facebook reindirizzato mi riporta alla mia app, che ha dato questo errore:

NoMethodError in OauthController # callback

undefined method `encode_json' for true:TrueClass

tutti gli errori di odio e anche a me Come posso risolvere questo problema? Grazie.

È stato utile?

Soluzione

Il metodo info! restituisce un'istanza di FBGraph::Result, è necessario chiamare data su di esso in modo che Rails può codificare in JSON. Il seguente codice funziona bene per me:

render :json => client.selection.me.info!.data
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top