این راهنما نحوهی مهاجرت برنامههایی که از Directions API یا Distance Matrix API استفاده میکنند را به Routes API شرح میدهد. برای جزئیات بیشتر در مورد Routes API، به نمای کلی محصول مراجعه کنید.
بهترین شیوههای صدور صورتحساب برای مهاجرت
این راهنمایی در صورتی اعمال میشود که استفاده از API شما به اندازهای بالا باشد که به قیمتگذاری سطح دوم روی بیاورید. هنگام مهاجرت به نسخه جدیدتر API، هزینه SKU متفاوتی نیز برای شما محاسبه میشود. برای جلوگیری از افزایش هزینهها در طول ماه انتقال، توصیه میکنیم تا حد امکان نزدیک به ابتدای ماه به APIهای جدید در حال تولید تغییر دهید. این کار تضمین میکند که در طول ماه مهاجرت به مقرونبهصرفهترین سطوح قیمتگذاری ماهانه دسترسی پیدا کنید. برای کسب اطلاعات در مورد سطوح قیمتگذاری، به صفحه قیمتگذاری و سوالات متداول قیمتگذاری مراجعه کنید.
بهروزرسانی نقاط پایانی REST API
کد خود را برای استفاده از نقاط پایانی جدید API مسیرها بهروزرسانی کنید
از API مسیرها
| API مسیرها | https://maps.googleapis.com/maps/api/directions/ outputFormat ? parameters |
| API مسیرها | https://routes.googleapis.com/directions/v2:computeRoutes |
از API ماتریس فاصله
| API ماتریس فاصله | https://maps.googleapis.com/maps/api/distancematrix/ outputFormat ? parameters |
| API مسیرها | https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix |
تبدیل پارامترهای URL برای استفاده از بدنه درخواست HTTPS
با استفاده از Directions API و Distance Matrix API، شما ویژگیهای پیکربندی را به عنوان پارامترهای URL به یک درخواست HTTP GET ارسال میکنید. به عنوان مثال، برای Directions API:
https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
با استفاده از API مسیرها، شما پارامترها را در بدنه درخواست یا در هدرها به عنوان بخشی از یک درخواست HTTP POST ارسال میکنید. برای مثال، به موارد زیر مراجعه کنید:
تبدیل نقاط مسیر کدگذاری شده با چندخطی به نقاط مسیر موقعیت مکانی
مشخص کردن نقاط مسیر به عنوان چندخطیهای کدگذاری شده در API Directions (Legacy) موجود است تا تعداد زیادی از نقاط مسیر را در محدوده URL 16384 کاراکتر جا دهد. این ویژگی در API Routes ضروری نیست زیرا نقاط مسیر را میتوان در بدنه درخواست REST یا gRPC به عنوان مختصات عرض/طول جغرافیایی ارسال کرد. برای مثال، به مثال HTTP در سند Compute a route matrix یا به تعریف یک نقطه مسیر میانی در سند Specify intermediate waypoints مراجعه کنید.
تبدیل پارامترها
جداول زیر پارامترهایی را در Directions API و Distance Matrix API که تغییر نام داده یا اصلاح شدهاند، یا پارامترهایی که در نسخه GA پشتیبانی نمیشوند، فهرست میکنند. اگر از هر یک از این پارامترها استفاده میکنید، کد خود را بهروزرسانی کنید.
درخواست تبدیل پارامترها
| پارامتر ماتریس جهت یا فاصله | پارامتر API مسیرها | یادداشتها |
|---|---|---|
alternatives | computeAlternativeRoutes | |
arrival_time | arrivalTime | فقط در حالت TRANSIT موجود است، و نه همزمان با departureTime . |
avoid | routeModifiers | |
departure_time | departureTime | نمیتوان همزمان با arrivalTime استفاده کرد. |
language | languageCode | فقط برای مسیرهای محاسباتی پشتیبانی میشود. |
mode | travelMode | پشتیبانی از |
region | regionCode | |
traffic_model | trafficModel | بیشتر بدانید |
transit_mode | "travelMode": "TRANSIT" | در API مربوط به مسیرها (Legacy)، در یک مسیر حمل و نقل عمومی، هر بخش از یک سفر با حالت سفر یکسان (مثلاً پیادهروی یا حمل و نقل عمومی) یک گام در نظر گرفته میشود و مسیرهای جداگانه برای آن حالت سفر در زیرگامها قرار دارند. در مقابل، در API مربوط به مسیرها، گامها به طور مداوم یک دستورالعمل ناوبری در تمام انواع سفر هستند. بنابراین هر دستورالعمل ناوبری یک گام است. برای چندین گام در یک حالت سفر، API مربوط به مسیرها، فرادادهای را ارائه میدهد که شامل خلاصهای از مراحل آن حالت سفر است و در `stepsOverview` قرار دارد. برای درخواست این فراداده، از ماسک فیلد `routes.legs.stepsOverview` استفاده کنید. اطلاعات بیشتر . |
transit_routing_preference | transitRoutingPreference | بیشتر بدانید |
units | units | بیشتر بدانید |
waypoints | intermediates | پشتیبانی از چندخطیهای کدگذاریشده حذف شد. |
برای نقاط مسیر optimize=true | "optimizeWaypointOrder": "true" | بیشتر بدانید |
تبدیل پارامترهای پاسخ
| پارامتر ماتریس جهت یا فاصله | پارامتر API مسیرها | یادداشتها |
|---|---|---|
copyrights | در پاسخ گنجانده نشده است. هنگام نمایش نتایج به کاربران خود، باید عبارت زیر را وارد کنید: برای مثال: | |
distance | distanceMeters | فاصله فقط به متر موجود است. |
duration_in_traffic | duration | در API مسیرها حذف شده است، duration استفاده کنید. |
status | در دسترس نیست. از کدهای پاسخ HTTP برای خطاهای گزارش شده توسط API استفاده کنید. برای اطلاعات بیشتر به بخش مدیریت خطاهای درخواست مراجعه کنید. | |
geocoded_waypoints | geocoding_results | فقط برای مسیرهای محاسباتی پشتیبانی میشود. فقط شامل اطلاعات پاسخ ژئوکدینگ برای نقاط مسیر مشخص شده به عنوان آدرس است. |
bounds | viewport | |
legs.end_address | موجود نیست. | برای مسیریابی با دقت بالا، به جای مختصات از شناسههای مکان استفاده کنید. شناسههای مکان حاوی دادههایی هستند که مسیر را برای اصلاح نقاط دسترسی ثبت میکنند.
|
legs.start_address | موجود نیست. | |
overview_polyline | پلیلاین | |
summary | description | |
waypoint_order | optimizedIntermediateWaypointIndex |