Road Management Insights از API انتخاب جادهها به عنوان یک جزء اصلی استفاده میکند که دادههای جاده را برای BigQuery و Pub/Sub فراهم میکند.
API انتخاب جادهها از استفاده از OAuth 2.0 برای احراز هویت پشتیبانی میکند. گوگل از سناریوهای رایج OAuth 2.0 مانند سناریوهای مربوط به یک وب سرور پشتیبانی میکند.
این سند نحوه ارسال توکن OAuth به فراخوانی API انتخاب جادهها در محیط توسعه شما را شرح میدهد. برای دستورالعملهای استفاده از OAuth در یک محیط عملیاتی ، به بخش احراز هویت در گوگل مراجعه کنید.
قبل از اینکه شروع کنی
قبل از شروع استفاده از API انتخاب جادهها، به یک پروژه با حساب صورتحساب و API انتخاب جادهها فعال نیاز دارید. توصیه میکنیم چندین مالک پروژه و مدیر صورتحساب ایجاد کنید تا همیشه فردی با این نقشها در دسترس تیم خود داشته باشید. برای کسب اطلاعات بیشتر، به بخش «تنظیم در کنسول ابری» مراجعه کنید.
درباره OAuth
روشهای زیادی برای ایجاد و مدیریت توکنهای دسترسی با OAuth بر اساس محیط استقرار شما وجود دارد.
برای مثال، سیستم Google OAuth 2.0 از تعاملات سرور به سرور، مانند تعاملات بین برنامه شما و یک سرویس گوگل، پشتیبانی میکند. برای این سناریو، شما به یک حساب کاربری سرویس نیاز دارید، که حسابی است که به برنامه شما تعلق دارد نه به یک کاربر نهایی. برنامه شما APIهای گوگل را از طرف حساب کاربری سرویس فراخوانی میکند، بنابراین کاربران مستقیماً درگیر نمیشوند. برای اطلاعات بیشتر در مورد روشهای احراز هویت، به بخش احراز هویت در گوگل مراجعه کنید.
به عنوان یک روش جایگزین، میتوانید از API انتخاب جادهها به عنوان بخشی از یک برنامه تلفن همراه اندروید یا iOS استفاده کنید. برای اطلاعات کلی در مورد استفاده از OAuth با API انتخاب جادهها، از جمله اطلاعات مربوط به مدیریت توکنهای دسترسی برای محیطهای استقرار مختلف، به بخش «استفاده از OAuth 2.0 برای دسترسی به APIهای گوگل» مراجعه کنید.
درباره دامنههای OAuth
برای استفاده از OAuth با API انتخاب جادهها، باید به توکن OAuth محدوده اختصاص داده شود:
-
https://www.googleapis.com/auth/cloud-platform
مثال: فراخوانیهای REST API را در محیط توسعه محلی خود امتحان کنید
اگر میخواهید با استفاده از یک توکن OAuth، از API انتخاب جادهها استفاده کنید، اما محیطی برای تولید توکنها ندارید، میتوانید از رویه موجود در این بخش برای فراخوانی استفاده کنید.
این مثال نحوه استفاده از توکن OAuth ارائه شده توسط Application Default Credentials (ADC) را برای برقراری تماس شرح میدهد. برای اطلاعات بیشتر در مورد استفاده از ADC برای فراخوانی APIهای گوگل با استفاده از کتابخانههای کلاینت، به بخش احراز هویت با استفاده از کتابخانههای کلاینت مراجعه کنید.
پیشنیازها
قبل از اینکه بتوانید با استفاده از ADC درخواست REST ارسال کنید، از رابط خط فرمان گوگل کلود (Google Cloud CLI) برای ارائه اعتبارنامه به ADC استفاده کنید:
- اگر قبلاً این کار را نکردهاید، یک پروژه ایجاد کنید و با دنبال کردن مراحل موجود در بخش تنظیمات در کنسول گوگل کلود، پرداخت را فعال کنید.
- رابط خط فرمان gcloud را نصب و راهاندازی کنید .
دستور
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وارد کنید. برای کسب اطلاعات بیشتر، به بخش «تنظیمات در کنسول ابری» مراجعه کنید.
مثال زیر با استفاده از توکن OAuth، رابط برنامهنویسی کاربردی انتخاب جادهها (Roads Selection API) را فراخوانی میکند:
curl -X GET \ -H 'X-Goog-User-Project: PROJECT_NUMBER' \ -H 'Authorization: Bearer ACCESS_TOKEN' \ https://roads.googleapis.com/selection/v1/projects/PROJECT_NUMBER/selectedRoutes/SELECTED_ROUTE_ID
عیبیابی
اگر درخواست شما پیام خطایی مبنی بر عدم پشتیبانی اعتبارنامههای کاربر نهایی توسط این API نشان داد، به بخش «عدم کارکرد اعتبارنامههای کاربر» مراجعه کنید.