توضّح الخطوات السريعة كيفية إعداد تطبيق يستدعي واجهة برمجة التطبيقات Google Workspace API وتشغيله.
تستخدِم عمليات الإعداد السريع في Google Workspace مكتبات عملاء واجهة برمجة التطبيقات لمعالجة بعض تفاصيل عملية المصادقة والتفويض. ننصحك باستخدام مكتبات العملاء لتطبيقاتك. يستخدم دليل البدء السريع هذا أسلوب مصادقة بسيطًا ومناسبًا لبيئة الاختبار. بالنسبة إلى بيئة الإنتاج، ننصحك بالاطّلاع على معلومات عن المصادقة والتفويض قبل اختيار بيانات اعتماد الوصول الملائمة لتطبيقك.
أنشئ تطبيق سطر أوامر Python يُرسل طلبات إلى واجهة برمجة التطبيقات Drive Labels API.
الأهداف
- اضبط إعدادات البيئة.
- ثبِّت مكتبة البرامج.
- إعداد العيّنة
- شغِّل العيّنة.
المتطلبات الأساسية
- الإصدار 2.6 من Python أو إصدار أحدث
- أداة إدارة الحِزم pip
- مشروع على Google Cloud
- حساب Google
إعداد البيئة
لإكمال عملية الإعداد السريعة هذه، عليك إعداد بيئتك.
تفعيل واجهة برمجة التطبيقات
قبل استخدام واجهات برمجة تطبيقات Google، عليك تفعيلها في مشروع على Google Cloud. يمكنك تفعيل واجهة برمجة تطبيقات واحدة أو أكثر في مشروع واحد على Google Cloud.في Google Cloud Console، فعِّل Drive Labels API.
تفويض بيانات الاعتماد لتطبيق على الكمبيوتر المكتبي
لمصادقة المستخدمين النهائيين والوصول إلى بيانات المستخدمين في تطبيقك، عليك إنشاء معرّف عميل واحد أو أكثر من معرّفات OAuth 2.0. يُستخدَم معرّف العميل لتحديد تطبيق واحد على خوادم OAuth في Google. إذا كان تطبيقك يعمل على منصات متعددة، يجب إنشاء معرّف عميل منفصل لكل منصة.- في وحدة تحكّم Google Cloud، انتقِل إلى رمز القائمة > واجهات برمجة التطبيقات والخدمات > بيانات الاعتماد.
- انقر على إنشاء بيانات اعتماد > معرِّف عميل OAuth.
- انقر على نوع التطبيق > تطبيق كمبيوتر مكتبي.
- في حقل الاسم، اكتب اسمًا لبيانات الاعتماد. ولا يظهر هذا الاسم إلا في "وحدة تحكّم Google Cloud".
- انقر على إنشاء. تظهر شاشة "تم إنشاء عميل OAuth"، والتي تعرض معرّف العميل الجديد وسرّه.
- انقر على موافق. تظهر بيانات الاعتماد التي تم إنشاؤها حديثًا ضمن معرِّفات عملاء OAuth 2.0.
- احفظ ملف JSON الذي تم تنزيله باسم
credentials.json
، وانقل ملف إلى دليل العمل.
تثبيت مكتبة عملاء Google
ثبِّت مكتبة برامج Google لنظام التشغيل Python:
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
للحصول على خيارات التثبيت البديلة، يُرجى الرجوع إلى قسم التثبيت في مكتبة Python.
ضبط العيّنة
- في دليل العمل، أنشئ ملفًا باسم
quickstart.py
. أدرِج الرمز التالي في
quickstart.py
:import os.path from google.auth.transport.requests import Request from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build from googleapiclient.errors import HttpError # If modifying these scopes, delete the file token.json. SCOPES = ['https://www.googleapis.com/auth/drive.labels.readonly'] def main(): """Shows basic usage of the Drive Labels API. Prints the first page of the customer's Labels. """ creds = None # The file token.json stores the user's access and refresh tokens, and is # created automatically when the authorization flow completes for the first # time. if os.path.exists('token.json'): creds = Credentials.from_authorized_user_file('token.json', SCOPES) # If there are no (valid) credentials available, let the user log in. if not creds or not creds.valid: if creds and creds.expired and creds.refresh_token: creds.refresh(Request()) else: flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) creds = flow.run_local_server(port=0) # Save the credentials for the next run with open('token.json', 'w') as token: token.write(creds.to_json()) try: service = build('drivelabels', 'v2', credentials=creds) response = service.labels().list( view='LABEL_VIEW_FULL').execute() labels = response['labels'] if not labels: print('No Labels') else: for label in labels: name = label['name'] title = label['properties']['title'] print(u'{0}:\t{1}'.format(name, title)) except HttpError as error: # TODO (developer) - Handle errors from Labels API. print(f'An error occurred: {error}') if __name__ == '__main__': main()
تشغيل العيّنة
في دليل العمل، أنشئ العيّنة وشغِّلها:
python quickstart.py
في المرة الأولى التي تُشغِّل فيها العيّنة، سيُطلَب منك تفويض الوصول:
- إذا لم تكن مسجِّلاً الدخول إلى حسابك على Google، سيُطلب منك تسجيل الدخول. إذا كنت مسجّلاً الدخول إلى حسابات متعدّدة، اختَر حسابًا واحدًا لاستخدامه في التفويض.
- انقر على قبول.
يتم تخزين معلومات التفويض في نظام الملفات، لذا لن يُطلب منك التفويض في المرة التالية التي تدخِل فيها رمزًا نموذجيًا.
لقد أنشأت بنجاح تطبيق Python الأول الذي يُرسل طلبات إلى واجهة برمجة التطبيقات Drive Labels API.