تتيح Places Insights API استخدام بروتوكول OAuth 2.0 للمصادقة. توفّر Google سيناريوهات OAuth 2.0 الشائعة، مثل سيناريوهات خادم الويب.
يوضّح هذا المستند كيفية تمرير رمز مميّز لبروتوكول OAuth إلى طلب Places Insights API في بيئة التطوير. للحصول على تعليمات حول استخدام OAuth في بيئة الإنتاج، يُرجى الاطّلاع على مقالة المصادقة في Google.
قبل البدء
قبل البدء في استخدام Places Insights API، تحتاج إلى مشروع يتضمّن حساب فوترة وواجهة برمجة التطبيقات Places Insights API مفعّلة. ننصحك بإنشاء عدة أصحاب مشاريع ومشرفي الفوترة، لكي يكون لديك دائمًا شخص يمتلك هذين الدورين متاحًا لفريقك. لمزيد من المعلومات، يُرجى الاطّلاع على الإعداد في Cloud Console.
لمحة عن بروتوكول OAuth
هناك العديد من الطرق لإنشاء رموز الوصول وإدارتها باستخدام OAuth استنادًا إلى بيئة النشر.
على سبيل المثال، يتيح نظام Google OAuth 2.0 التفاعلات بين الخوادم، مثل تلك التي تتم بين تطبيقك وخدمة Google. في هذا السيناريو، تحتاج إلى حساب خدمة، وهو حساب ينتمي إلى تطبيقك بدلاً من مستخدم نهائي فردي. يُطلِب تطبيقك واجهات برمجة تطبيقات Google بالنيابة عن حساب الخدمة، لذلك لا يشارك المستخدمون بشكل مباشر. لمزيد من المعلومات عن طرق المصادقة، يُرجى الاطّلاع على مقالة المصادقة في Google.
بدلاً من ذلك، يمكنك استخدام Places Insights API كجزء من تطبيق Android أو iOS متوافق مع الأجهزة الجوّالة. للحصول على معلومات عامة عن استخدام OAuth مع Places Insights API، بما في ذلك معلومات عن إدارة الرموز المميّزة للوصول إلى بيئات النشر المختلفة، يُرجى الاطّلاع على استخدام OAuth 2.0 للوصول إلى Google APIs.
لمحة عن نطاقات OAuth
لاستخدام OAuth مع Places Insights API، يجب منح رمز OAuth النطاق التالي:
https://www.googleapis.com/auth/cloud-platform
مثال: تجربة طلبات البيانات من واجهة برمجة التطبيقات REST في بيئة التطوير المحلية
إذا كنت تريد تجربة Places Insights API باستخدام رمز مميز لبروتوكول OAuth، ولكن ليس لديك بيئة تم إعدادها لإنشاء الرموز المميزة، يمكنك استخدام الإجراء الوارد في هذا القسم لإجراء الطلب.
يوضّح هذا المثال كيفية استخدام رمز OAuth المميّز المقدَّم من بيانات الاعتماد التلقائية للتطبيق (ADC) لإجراء المكالمة. للحصول على معلومات عن استخدام أداة "إدارة الاعتمادات" للاتصال بـ Google API باستخدام مكتبات العملاء، اطّلِع على مقالة المصادقة باستخدام مكتبات العملاء.
المتطلبات الأساسية
قبل أن تتمكّن من إرسال طلب REST باستخدام أداة ربط البيانات (ADC)، استخدِم Google Cloud CLI لتوفير بيانات الاعتماد لخدمة ADC:
- أنشئ مشروعًا وفعِّل ميزة الفوترة باتّباع الخطوات الواردة في مقالة الإعداد في Google Cloud Console إذا لم يسبق لك ذلك.
- ثبِّت واجهة gcloud CLI وفعِّلها.
شغِّل الأمر
gcloud
التالي على جهازك المحلي لإنشاءملف بيانات الاعتماد:gcloud auth application-default login
- تظهر شاشة تسجيل الدخول. بعد تسجيل الدخول، يتم تخزين بيانات الاعتماد في ملف بيانات الاعتماد المحلي المستخدَم من قِبل أداة ADC.
لمزيد من المعلومات، يُرجى الاطّلاع على قسم بيئة التطوير المحلية في مستندات توفير بيانات الاعتماد لميزة "بيانات الاعتماد التلقائية للتطبيق".
إرسال طلب REST
في هذا المثال، يتمّ تمرير رأسَي طلب:
نقْل رمز OAuth المميّز في عنوان
Authorization
باستخدام الأمر التالي لإنشاء الرمز المميّز:gcloud auth application-default print-access-token
يملك الرمز المميّز الذي تم إرجاعه نطاقًا هو
https://www.googleapis.com/auth/cloud-platform.
- نقْل رقم تعريف أو اسم مشروعك على Google Cloud الذي تم تفعيل الفوترة فيه في عنوان
X-Goog-User-Project
. لمزيد من المعلومات، يُرجى الاطّلاع على الإعداد في Cloud Console.
يُجري المثال التالي طلبًا إلى Places Insights API باستخدام رمز OAuth المميّز:
curl -X POST 'https://areainsights.googleapis.com/v1:computeInsights' \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_NUMBER_OR_ID" \ -H "Authorization: Bearer $TOKEN" \ --data '{ "insights":[ "INSIGHT_COUNT" ], "filter":{ "location_filter":{ "region":{ "place":"places/ChIJIQBpAG2ahYAR_6128GcTUEo" } }, "type_filter":{ "included_types":[ "restaurant" ] }, "price_levels":[ "PRICE_LEVEL_INEXPENSIVE" ] } }'
تحديد المشاكل وحلّها
إذا كان طلبك يعرض رسالة خطأ تفيد بأنّ بيانات اعتماد المستخدم النهائي غير متوافقة مع واجهة برمجة التطبيقات هذه، راجِع بيانات اعتماد المستخدم لا تعمل.