يوضّح دليل البدء السريع هذا كيفية إعداد تطبيق بسيط يعمل من سطر الأوامر بلغة Java ويرسل طلبات إلى YouTube Data API. توضّح هذه البداية السريعة كيفية تقديم طلبَين إلى واجهة برمجة التطبيقات:
- ستستخدم مفتاح واجهة برمجة تطبيقات يحدّد تطبيقك لاسترداد معلومات حول قناة GoogleDevelopers على YouTube.
- ستستخدم معرّف عميل OAuth 2.0 لإرسال طلب مفوّض يسترد معلومات حول قناتك على YouTube.
المتطلبات الأساسية
لتشغيل هذا التشغيل السريع، يجب توفُّر ما يلي:
- الإصدار 1.7 من Java أو إصدار أحدث
- الإصدار 2.3 من Gradle أو إصدار أحدث
- إمكانية الوصول إلى الإنترنت ومتصفّح ويب
- حساب Google
الخطوة 1: إعداد مشروعك وبيانات الاعتماد
أنشِئ مشروعًا أو اختَر مشروعًا في Cloud Console. أكمِل المهام التالية في Cloud Console لمشروعك:
في لوحة المكتبة، ابحث عن YouTube Data API v3. انقر على بطاقة بيانات واجهة برمجة التطبيقات هذه وتأكَّد من تفعيلها لمشروعك.
في لوحة بيانات الاعتماد، أنشئ بيانات اعتماد على النحو التالي:
إنشاء مفتاح لواجهة برمجة التطبيقات ستستخدم مفتاح واجهة برمجة التطبيقات لإجراء طلبات إلى واجهة برمجة التطبيقات لا تتطلّب تفويضًا من المستخدم. على سبيل المثال، لا تحتاج إلى إذن المستخدم لاسترداد معلومات حول قناة على YouTube عامة.
إنشاء معرّف عميل OAuth 2.0 اضبط نوع التطبيق على تطبيق سطح المكتب. يجب استخدام بيانات اعتماد OAuth 2.0 للطلبات التي تتطلّب تفويض المستخدم. على سبيل المثال، تحتاج إلى إذن من المستخدم لاسترداد معلومات حول قناة على YouTube الخاصة بالمستخدم الذي تم التحقّق من هويته حاليًا.
نزِّل ملف JSON الذي يحتوي على بيانات اعتماد OAuth 2.0. يحتوي الملف على اسم مثل
client_secret_CLIENTID.json، حيث يمثّلCLIENTIDمعرّف العميل الخاص بمشروعك.
الخطوة 2: إعداد المشروع
أكمِل الخطوات التالية لإعداد مشروع Gradle:
في دليل العمل، نفِّذ الأوامر التالية لإنشاء بنية مشروع جديدة:
$ gradle init --type basic $ mkdir -p src/main/java src/main/resourcesانقِل ملف JSON الذي نزّلته بعد إنشاء معرّف عميل OAuth 2.0 إلى الدليل
src/main/resourcesضمن دليل العمل، وأعِد تسمية الملف إلىclient_secret.json.افتح الملف
build.gradleفي دليل العمل واستبدِل محتواه بما يلي:apply plugin: 'java' apply plugin: 'application' mainClassName = 'ApiExample' sourceCompatibility = 1.7 targetCompatibility = 1.7 version = '1.0' repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.23.0' compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0' compile 'com.google.apis:google-api-services-youtube:v3-revREVISION-CL_VERSION' }
في الملف
build.gradle، عليك استبدال المتغيّرين REVISION وCL_VERSION بقيمتَين من مستندات مكتبة البرامج الخاصة بواجهة YouTube Data API. تعرض لقطة الشاشة أدناه، التي توضّح مستندات YouTube Analytics API، المكان الذي يظهر فيه المتغيّران على الصفحة.
الخطوة 3: إعداد العيّنة وتشغيلها
استخدِم أداة APIs Explorer في اللوحة الجانبية للحصول على نموذج رمز برمجي لاسترداد معلومات حول قناة GoogleDevelopers على YouTube. يستخدم هذا الطلب مفتاح واجهة برمجة التطبيقات لتحديد تطبيقك، ولا يتطلّب تفويضًا من المستخدم أو أي أذونات خاصة من المستخدم الذي يشغّل النموذج.
- افتح مستندات طريقة channels.list في واجهة برمجة التطبيقات.
في تلك الصفحة، يحتوي قسم "حالات الاستخدام الشائعة" على جدول يوضّح عدة طرق شائعة لاستخدام الطريقة. تتعلّق القائمة الأولى في الجدول بنتائج القوائم حسب معرّف القناة.
انقر على رمز الرمز البرمجي الخاص بالإدراج الأول لفتح مستكشف واجهات برمجة التطبيقات بملء الشاشة وتعبئته.

يعرض الجانب الأيسر من "مستكشف واجهات برمجة التطبيقات لوضع ملء الشاشة" ما يلي:
أسفل عنوان مَعلمات الطلب، تظهر قائمة بالمَعلمات التي تتوافق مع الطريقة. يجب ضبط قيم المَعلمتَين
partوid. قيمة المَعلمةid، أيUC_x5XG1OV2P6uZZ5FSM9Ttw، هي معرّف قناة GoogleDevelopers على YouTube.أسفل المَعلمات، هناك قسم باسم بيانات الاعتماد. يجب أن تعرض القائمة المنسدلة في هذا القسم القيمة مفتاح واجهة برمجة التطبيقات. يستخدم مستكشف واجهات برمجة التطبيقات بيانات اعتماد تجريبية تلقائيًا لتسهيل عملية البدء. ولكنّك ستستخدم مفتاح واجهة برمجة التطبيقات الخاص بك لتشغيل النموذج محليًا.

يعرض الجانب الأيسر من "مستكشف واجهات برمجة التطبيقات بملء الشاشة" علامات تبويب تتضمّن عيّنات من الرموز البرمجية بلغات مختلفة. انقر على علامة التبويب Java.
انسخ نموذج الرمز واحفظه في ملف باسم
src/main/java/ApiExample.java. يستخدم كل نموذج اسم الفئة نفسه (ApiExample) حتى لا تحتاج إلى تعديل ملفbuild.gradleلتشغيل نماذج مختلفة.في النموذج الذي نزّلته، ابحث عن السلسلة
YOUR_API_KEYواستبدلها بمفتاح واجهة برمجة التطبيقات الذي أنشأته في الخطوة 1 من هذا الدليل السريع.نفِّذ العيّنة من سطر الأوامر. في دليل العمل، نفِّذ ما يلي:
gradle -q runيجب أن ينفّذ النموذج الطلب ويطبع الردّ على
STDOUT.
الخطوة 4: تنفيذ طلب معتمد
في هذه الخطوة، ستعدّل عينة التعليمات البرمجية لكي تسترد معلومات حول قناتك على YouTube بدلاً من استرداد معلومات حول قناة GoogleDevelopers على YouTube. يتطلّب هذا الطلب تفويضًا من المستخدم.
ارجع إلى مستندات طريقة channels.list الخاصة بواجهة برمجة التطبيقات.
في قسم "حالات الاستخدام الشائعة"، انقر على رمز الرمز البرمجي الخاص بالإدخال الثالث في الجدول. حالة الاستخدام هذه هي استدعاء الطريقة
listللقناة "my channel".مرة أخرى، في الجانب الأيمن من "مستكشف واجهات برمجة التطبيقات بملء الشاشة"، ستظهر لك قائمة بالمعلمات متبوعة بقسم بيانات الاعتماد. ومع ذلك، هناك تغييران عن المثال الذي استرجعت فيه معلومات حول قناة GoogleDevelopers:
في قسم المَعلمات، بدلاً من ضبط قيمة المَعلمة
id، يجب ضبط قيمة المَعلمةmineعلىtrue. يطلب هذا النطاق من خادم واجهة برمجة التطبيقات استرداد معلومات حول قناة المستخدم الذي تمّت مصادقته حاليًا.في قسم بيانات الاعتماد، يجب أن تحدّد القائمة المنسدلة الخيار Google OAuth 2.0.
بالإضافة إلى ذلك، إذا نقرت على الرابط عرض النطاقات، يجب أن يكون النطاق https://www.googleapis.com/auth/youtube.readonly محدّدًا.

كما هو الحال مع المثال السابق، اختَر علامة التبويب Java، وانسخ عينة التعليمات البرمجية واحفظها في
src/main/java/ApiExample.java.نفِّذ العيّنة من سطر الأوامر. في دليل العمل، نفِّذ ما يلي:
gradle -q runمن المفترض أن يحاول النموذج فتح نافذة أو علامة تبويب جديدة في المتصفّح التلقائي. إذا تعذّر ذلك، انسخ عنوان URL من نافذة الوحدة الطرفية وافتحه يدويًا في المتصفّح.
إذا لم تكن مسجِّلاً الدخول إلى حسابك على Google، سيُطلب منك إجراء ذلك. إذا كنت مسجّلاً الدخول إلى عدة حسابات على Google، سيُطلب منك اختيار حساب واحد لاستخدامه في عملية التفويض.
انقر على الزر لمنح تطبيقك إذن الوصول إلى النطاقات المحدّدة في عينة التعليمات البرمجية.
ستتم معالجة العيّنة تلقائيًا، ويمكنك إغلاق علامة تبويب المتصفّح المستخدَمة في عملية المصادقة.
يجب طباعة الردّ من واجهة برمجة التطبيقات مرة أخرى في
STDOUT.