2014-02-14 84 views
0

我正在使用rails爲Rails上的Fitbit API創建客戶端(非常類似於twitter api)。Oauth客戶端創建軌道

在我device.rb文件

def fitbit_data 
    @client = Fitgem::Client.new (
     :consumer_key => 'bb1', #I understand the security issues here and will change it for production 
     :consumer_secret => '81f', 
     :token => oauth_token, 
     :secret => oauth_token_secret, 
    :user_id => uid 
    ) 
    end 

它說,我的語法是錯誤的,之後要求一個 ')':CONSUMER_KEY。我如何獲得正確的語法?

+0

看一看'initialize'方法的源代碼(有88行的例子)https://github.com/whazzmaster/fitgem/blob/master/lib/fitgem/client.rb – cristian

+0

ya,我改變它完全遵循,但我仍然得到語法錯誤。這應該放在哪裏? (device.rb或device_controller.rb)? – Marcus

回答

0

注意:此答案適用於Rails 4.1.4和Fitgem 0.10.0。

我認爲這裏的問題是,初始化一個客戶端,你必須傳入一個散列。另外,我不認爲有必要指定一個user_id密鑰。看到我的代碼如下:

$client = Fitgem::Client.new ({ :consumer_key => ENV["FITBIT_CONSUMER_KEY"], 
          :consumer_secret => ENV["FITBIT_CONSUMER_SECRET"], 
          :token => ENV["OAUTH_TOKEN"], 
          :secret => ENV["OAUTH_SECRET"] }) 

讓我知道這是否有幫助。