2014-01-07 153 views
1

我使用YouTube啓動了一個基於web的開發項目,當我註冊API時,我收到的都是客戶端ID和電子郵件ID。然而,在調用數據API的Ruby示例文本中,它指出:Google開發者API密鑰和YouTube API

def initialize(scope) 
    credentials = Google::APIClient::ClientSecrets.load 
    @authorization = Signet::OAuth2::Client.new(
     :authorization_uri => credentials.authorization_uri, 
     :token_credential_uri => credentials.token_credential_uri, 
     :client_id => credentials.client_id, 
     :client_secret => credentials.client_secret, 
     :redirect_uri => credentials.redirect_uris.first, 
     :scope => scope 

我不知道要去抓這些證書。想法?

回答

0

由於YouTube現在是基於Google帳戶的,因此需要在Google Developers Console(選擇YouTube數據API)上獲取這些憑據,您必須啓動正常的Google登錄過程。當您在控制檯上創建新應用程序時,會生成client_id和client_secret,並根據您的應用程序結構設置您的redirect_uri。

儘管Signet有一個很好的OAuth2模塊,但我發現Omniauth非常易於使用(並且您仍然可以與Signet一起使用它)。如果您不需要自定義登錄過程,Omniauth會將大部分內容放在黑盒子中(它非常高效),併爲您處理令牌刷新等。我可能會使用Omniauth Google strategy來獲取您的令牌,然後使用Google Ruby client來發出請求。