Bu sayfanın geri kalanında açıklanan adımları tamamladığınızda yaklaşık beş dakika içinde YouTube Data API'ye istek gönderen basit bir Ruby komut satırı uygulamanız olur.
Bu kılavuzda kullanılan örnek kod, GoogleDevelopers YouTube kanalınınchannel kaynağını alıp bu kaynaktan bazı temel bilgileri yazdırır.
Ön koşullar
Bu hızlı başlangıcı çalıştırmak için ihtiyacınız olanlar:
- Ruby 2.0 veya daha yeni bir sürüm.
- İnternet erişimi ve web tarayıcısı
- Google Hesabı
1. adım: YouTube Data API'yi etkinleştirin
-
Google Developers Console'da bir proje oluşturmak veya seçmek ve API'yi otomatik olarak etkinleştirmek için bu sihirbazı kullanın. Devam'ı, ardından Kimlik bilgilerine git'i tıklayın.
-
Kimlik bilgisi oluştur sayfasında İptal düğmesini tıklayın.
-
Sayfanın üst kısmındaki OAuth kullanıcı rızası ekranı sekmesini seçin. Bir E-posta adresi seçin, henüz ayarlanmamışsa bir Ürün adı girin ve Kaydet düğmesini tıklayın.
-
Kimlik bilgileri sekmesini seçin, Kimlik bilgileri oluştur düğmesini tıklayın ve OAuth istemci kimliği'ni seçin.
-
Uygulama türü olarak Diğer'i seçin, "YouTube Data API Quickstart" adını girin ve Oluştur düğmesini tıklayın.
-
Sonuçta ortaya çıkan iletişim kutusunu kapatmak için Tamam'ı tıklayın.
-
İstemci kimliğinin sağındaki (JSON'u indir) düğmesini tıklayın.
-
İndirilen dosyayı çalışma dizininize taşıyın ve
client_secret.jsonolarak yeniden adlandırın.
2. adım: Google istemci kitaplığını yükleyin
Kitaplığı yüklemek için aşağıdaki komutu çalıştırın:
gem install google-api-client
Alternatif yükleme seçenekleri için kitaplığın yükleme sayfasına bakın.
3. adım: Örneği ayarlayın
Çalışma dizininizde quickstart.rb adlı bir dosya oluşturun ve aşağıdaki kodu kopyalayın:
# Sample Ruby code for user authorization require 'rubygems' gem 'google-api-client', '>0.7' require 'google/apis' require 'google/apis/youtube_v3' require 'googleauth' require 'googleauth/stores/file_token_store' require 'fileutils' require 'json' # REPLACE WITH VALID REDIRECT_URI FOR YOUR CLIENT REDIRECT_URI = 'http://localhost' APPLICATION_NAME = 'YouTube Data API Ruby Tests' # REPLACE WITH NAME/LOCATION OF YOUR client_secrets.json FILE CLIENT_SECRETS_PATH = 'client_secret.json' # REPLACE FINAL ARGUMENT WITH FILE WHERE CREDENTIALS WILL BE STORED CREDENTIALS_PATH = File.join(Dir.home, '.credentials', "youtube-quickstart-ruby-credentials.yaml") # SCOPE FOR WHICH THIS SCRIPT REQUESTS AUTHORIZATION SCOPE = Google::Apis::YoutubeV3::AUTH_YOUTUBE_READONLY def authorize FileUtils.mkdir_p(File.dirname(CREDENTIALS_PATH)) client_id = Google::Auth::ClientId.from_file(CLIENT_SECRETS_PATH) token_store = Google::Auth::Stores::FileTokenStore.new(file: CREDENTIALS_PATH) authorizer = Google::Auth::UserAuthorizer.new( client_id, SCOPE, token_store) user_id = 'default' credentials = authorizer.get_credentials(user_id) if credentials.nil? url = authorizer.get_authorization_url(base_url: REDIRECT_URI) puts "Open the following URL in the browser and enter the " + "resulting code after authorization" puts url code = gets credentials = authorizer.get_and_store_credentials_from_code( user_id: user_id, code: code, base_url: REDIRECT_URI) end credentials end # Initialize the API service = Google::Apis::YoutubeV3::YouTubeService.new service.client_options.application_name = APPLICATION_NAME service.authorization = authorize # Sample ruby code for channels.list def channels_list_by_username(service, part, **params) response = service.list_channels(part, params).to_json item = JSON.parse(response).fetch("items")[0] puts ("This channel's ID is #{item.fetch("id")}. " + "Its title is '#{item.fetch("snippet").fetch("title")}', and it has " + "#{item.fetch("statistics").fetch("viewCount")} views.") end channels_list_by_username(service, 'snippet,contentDetails,statistics', for_username: 'GoogleDevelopers')
4. adım: Örneği çalıştırın
Aşağıdaki komutu kullanarak örneği çalıştırın:
ruby quickstart.rb
Örneği ilk kez çalıştırdığınızda erişim yetkisi vermeniz istenir:
Örnek, varsayılan tarayıcınızda yeni bir pencere veya sekme açmaya çalışıyor. Bu işlem başarısız olursa konsoldaki URL'yi kopyalayıp tarayıcınızda manuel olarak açın.
Henüz Google Hesabınıza giriş yapmadıysanız giriş yapmanız istenir. Birden fazla Google Hesabı'nda oturum açtıysanız yetkilendirme için kullanmak istediğiniz hesabı seçmeniz istenir.
- Kabul et düğmesini tıklayın.
Size verilen kodu kopyalayın, komut satırı istemine yapıştırın ve Enter'a basın. Kod, yetkilendirme verdikten sonra yönlendirildiğiniz sayfanın URL'sinde görünebilir:
http://localhost/?code=4/nr_1TspmmQPFyifh7nz...OFo#
Notlar
- Yetkilendirme bilgileri dosya sisteminde depolanır. Bu nedenle, sonraki yürütme işlemlerinde yetkilendirme istenmez.
- Bu örnekteki yetkilendirme akışı, komut satırı uygulaması için tasarlanmıştır. Bir web uygulamasında yetkilendirme işleminin nasıl yapılacağı hakkında bilgi edinmek için Web Sunucusu Uygulamaları için OAuth 2.0'ı Kullanma başlıklı makaleyi inceleyin.