يحتوي هذا المستودع على تعريفات الواجهة الأصلية لواجهات Google APIs العامة التي تدعم بروتوكولي REST وgRPC. يمكن أن توفر قراءة تعريفات الواجهة الأصلية فهمًا أفضل لواجهات برمجة تطبيقات Google وتساعدك على استخدامها بكفاءة أكبر. يمكنك أيضًا استخدام هذه التعريفات مع أدوات مفتوحة المصدر لإنشاء مكتبات العميل والوثائق والعناصر الأخرى.
الطريقة الموصى بها لبناء مكتبات عميل API هي من خلال Bazel >= 4.2.2.
أولا، تثبيت بازل.
لبناء كافة المكتبات:
bazel build //...
لاختبار كافة المكتبات:
bazel test //...
لبناء مكتبة واحدة بجميع اللغات:
bazel build //google/example/library/v1/...
لإنشاء حزمة Java لمكتبة واحدة:
bazel build //google/example/library/v1:google-cloud-example-library-v1-java
تتوفر حزم Bazel في جميع مكتبات Java وGo وPython وRuby وNode.js وPHP وC#.
عادةً ما يتم نشر Google APIs كخدمات API تتم استضافتها تحت أسماء DNS مختلفة. قد تقوم خدمة API واحدة بتنفيذ واجهات برمجة تطبيقات متعددة وإصدارات متعددة من نفس واجهة برمجة التطبيقات.
تستخدم Google APIs الإصدار 3 من Protocol Buffers (proto3) كلغة تعريف الواجهة (IDL) لتحديد واجهة API وبنية رسائل الحمولة. يتم استخدام تعريف الواجهة نفسه لكل من إصدارات REST وRPC لواجهة برمجة التطبيقات (API)، والتي يمكن الوصول إليها عبر بروتوكولات سلكية مختلفة.
هناك عدة طرق للوصول إلى Google APIs:
JSON عبر HTTP: يمكنك الوصول إلى جميع واجهات برمجة تطبيقات Google مباشرةً باستخدام JSON عبر HTTP، باستخدام مكتبة عميل Google API أو مكتبات عملاء واجهة برمجة التطبيقات التابعة لجهات خارجية.
المخازن المؤقتة للبروتوكول عبر gRPC: يمكنك الوصول إلى واجهات برمجة تطبيقات Google المنشورة في هذا المستودع من خلال GRPC، وهو بروتوكول RPC ثنائي عالي الأداء عبر HTTP/2. فهو يوفر العديد من الميزات المفيدة، بما في ذلك تعدد إرسال الطلب/الاستجابة والتدفق المزدوج الكامل.
مكتبات Google Cloud Client: يمكنك استخدام هذه المكتبات للوصول إلى Google Cloud APIs. وهي تعتمد على gRPC للحصول على أداء أفضل وتوفر سطح عميل اصطلاحي لتجربة مطور أفضل.
يحتوي هذا الريبو على نسخ من تعريفات Google API والملفات ذات الصلة. لإجراء المناقشات أو إثارة المشكلات المتعلقة بمكتبات عملاء Google API أو GRPC أو مكتبات Google Cloud Client، يرجى الرجوع إلى مستودعات إعادة الشراء المرتبطة بكل منطقة.
يستخدم هذا المستودع تسلسلاً هرميًا للدليل يعكس بنية منتج Google API. بشكل عام، كل واجهة برمجة تطبيقات لها دليل جذر خاص بها، ولكل إصدار رئيسي من واجهة برمجة التطبيقات دليل فرعي خاص بها. تتطابق أسماء حزم proto تمامًا مع الدليل: وهذا يجعل من السهل تحديد موقع تعريفات proto ويضمن أن مكتبات العملاء التي تم إنشاؤها تحتوي على مساحات أسماء اصطلاحية في معظم لغات البرمجة. إلى جانب أدلة واجهة برمجة التطبيقات (API)، توجد ملفات التكوين الخاصة بمجموعة أدوات GAPIC.
ملاحظة: يتم استخدام الإصدار الرئيسي من واجهة برمجة التطبيقات (API) للإشارة إلى التغيير الجذري في واجهة برمجة التطبيقات (API).
لإنشاء كود مصدر gRPC لواجهات Google APIs في هذا المستودع، تحتاج أولاً إلى تثبيت كل من Protocol Buffers وgRPC على جهازك المحلي، ثم يمكنك تشغيل make LANGUAGE=xxx all
لإنشاء كود المصدر. تحتاج إلى دمج كود المصدر الذي تم إنشاؤه في نظام بناء التطبيق الخاص بك.
ملاحظة: يهدف Makefile فقط إلى إنشاء التعليمات البرمجية المصدر للمستودع بأكمله. لا يتعلق الأمر بإنشاء مكتبة عميل قابلة للربط لواجهة برمجة تطبيقات محددة. يرجى الاطلاع على المستودعات الأخرى ضمن https://github.com/googleapis لإنشاء مكتبات عملاء قابلة للربط.
من الصعب إنشاء كود مصدر Go gRPC من هذا المستودع، نظرًا لأن Go له بنية دليل مختلفة. الرجاء استخدام هذا المستودع بدلا من ذلك.