أكمِل الخطوات الموضّحة في بقية هذه الصفحة، وسيصبح لديك خلال خمس دقائق تقريبًا تطبيق بسيط على سطر الأوامر بلغة Ruby يرسل طلبات إلى YouTube Data API.
يستردّ نموذج الرمز البرمجي المستخدَم في هذا الدليل موردchannel لقناة GoogleDevelopers على YouTube ويطبع بعض المعلومات الأساسية من هذا المورد.
المتطلبات الأساسية
لتشغيل هذا التشغيل السريع، يجب توفُّر ما يلي:
- الإصدار 2.0 من Ruby أو إصدار أحدث
- الوصول إلى الإنترنت ومتصفّح ويب
- حساب Google
الخطوة 1: تفعيل YouTube Data API
-
استخدِم هذا المعالج لإنشاء مشروع أو اختياره في Google Developers Console و تفعيل واجهة برمجة التطبيقات تلقائيًا. انقر على متابعة، ثم على الانتقال إلى بيانات الاعتماد.
-
في صفحة إنشاء بيانات اعتماد ، انقر على الزرّ إلغاء.
-
في أعلى الصفحة، انقر على علامة التبويب شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth. اختَر عنوان بريد إلكتروني، وأدخِل اسم منتج إذا لم يتم ضبطه بعد ، وانقر على الزرّ حفظ.
-
انقر على علامة التبويب بيانات الاعتماد ، ثم على الزرّ إنشاء بيانات اعتماد واختَر معرِّف عميل OAuth.
-
اختَر نوع التطبيق أخرى، وأدخِل الاسم "التشغيل السريع لـ YouTube Data API"، وانقر على الزرّ إنشاء.
-
انقر على حسنًا لتجاهل مربّع الحوار الناتج.
-
انقر على الزرّ (تنزيل JSON) على يسار معرّف العميل.
-
انقِل الملف الذي تم تنزيله إلى دليل العمل وأعِد تسميته إلى
client_secret.json.
الخطوة 2: تثبيت مكتبة برامج Google
نفِّذ الأمر التالي لتثبيت المكتبة:
gem install google-api-client
يمكنك الاطّلاع على صفحة تثبيت المكتبة لمعرفة خيارات التثبيت البديلة.
الخطوة 3: إعداد النموذج
أنشئ ملفًا باسم quickstart.rb في دليل العمل وانسخ الرمز البرمجي التالي:
# 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: تشغيل النموذج
شغِّل النموذج باستخدام الأمر التالي:
ruby quickstart.rb
في المرة الأولى التي تشغِّل فيها النموذج، سيُطلب منك منح الإذن بالوصول:
يحاول النموذج فتح نافذة أو علامة تبويب جديدة في متصفّحك التلقائي. إذا تعذّر ذلك، انسخ عنوان URL من وحدة التحكّم وافتحه يدويًا في متصفّحك.
إذا لم تكن مسجّلاً الدخول إلى حسابك على Google، سيُطلب منك تسجيل الدخول. إذا كنت مسجّلاً الدخول إلى عدة حسابات على Google، سيُطلب منك اختيار حساب واحد لاستخدامه في عملية منح الإذن.
- انقر على الزرّ قبول.
انسخ الرمز الذي تم تقديمه لك، والصقه في سطر الأوامر، واضغط على مفتاح الإدخال. قد يظهر الرمز في عنوان URL للصفحة التي تتم إعادة توجيهك إليها بعد منح الإذن:
http://localhost/?code=4/nr_1TspmmQPFyifh7nz...OFo#
ملاحظات
- يتم تخزين معلومات منح الإذن في نظام الملفات، لذا لن يُطلب منك منح الإذن في عمليات التنفيذ اللاحقة.
- تم تصميم عملية منح الإذن في هذا المثال لتطبيق على سطر الأوامر. لمعرفة كيفية منح الإذن في تطبيق ويب ، يُرجى الاطّلاع على استخدام OAuth 2.0 لتطبيقات خادم الويب.