Rails OAuth - 从QuickBooks Online API重定向后,Session变量为nil

时间:2014-10-11 04:18:43

标签: ruby-on-rails oauth quickbooks-online

我正在尝试通过OAuth与QuickBooks Online进行身份验证。点击QuickBooks'上的授权后通知屏幕,它按预期重定向到回调网址,但我无法访问我在开头创建的请求令牌对象。

我尝试使用会话变量,但在QuickBooks调用时变量为nil。我怎么能这样做?

class QuickBooksController < ApplicationController

  def connect

    @call_back_url = 'http://127.0.0.1:3000/quickbooks/callback'

    @consumer = OAuth::Consumer.new('key', 'secret', {
        :site => 'https://oauth.intuit.com',
        :request_token_path => '/oauth/v1/get_request_token',
        :authorize_url => 'https://appcenter.intuit.com/Connect/Begin',
        :access_token_path => '/oauth/v1/get_access_token'
    })

    @request_token = @consumer.get_request_token(:oauth_callback => @callback_url)

    session[:request_token] = @request_token

    redirect_to @request_token.authorize_url(:oauth_callback => @call_back_url)

  end

  def callback

    #This does not work because session[:request_token] is nil
    @access_token = session[:request_token].get_access_token(:oauth_verifier => params[:oauth_verifier])

  end

end

0 个答案:

没有答案