2011-06-18 102 views
0

我想在rails中使用youtube的api。Rails 3 gdata網站寬YouTube客戶端

我需要一個客戶端,它能夠訪問youtubes API應用程序範圍。 所以我寫了下面的應用程序控制器

require 'gdata' 
class ApplicationController < ActionController::Base 
protect_from_forgery 
before_filter :auth 

def auth 
@client = GData::Client::YouTube.new 
@client.clientlogin('usermail', 'password') 

@client 
end 

end 

我能夠現在使用的客戶端在我的控制器延伸的ApplicationController。 這就是工作正常。 但它很慢。

有沒有辦法做一次認證,並使用它的應用程序範圍內,而不是起訴before_filter,每次調用之前調用一個方法?

最好,

菲利普

回答

0

這是一個網頁。網頁是無狀態的。因此你不能保存任何狀態。因此你不能保存你的登錄請求。因此你必須認證每個請求。

另一種方法是隻對某些控制器動作運行before過濾器。現在它運行在每一個行動上,我沒有必要。

嘗試:

before_filter :auth, :only=> my_action_name 

(附註:這可能是錯誤的語法 - 我很困惑「的原因軌變化這麼大 - 只要看看它)