چرا به Routes API مهاجرت کنیم؟

توسعه‌دهندگان منطقه اقتصادی اروپا (EEA)

API مسیرها (Routes API) عملکرد بهبود یافته‌ای را برای محاسبه مسیرها، مسافت و زمان سفر ارائه می‌دهد و جایگزینی آن با برنامه‌هایی که از API مسیرها (Directions API) و API فاصله ماتریس (Distance Matrix API) استفاده می‌کنند را ارزشمند می‌کند. بیشتر قابلیت‌های API مسیرها با هر دو API مسیرها (Directions API) و API فاصله ماتریس (Distance Matrix API) سازگار است.

از این راهنما برای درک تفاوت‌های کلیدی Routes API در مقایسه با محصولاتی که جایگزین آن‌ها می‌شود، به همراه نحوه مدیریت تغییرات لازم استفاده کنید. برای جزئیات بیشتر در مورد سایر ویژگی‌های Routes API، به نمای کلی محصول مراجعه کنید.

بهبودهای کلیدی

این بخش برخی از پیشرفت‌هایی را که می‌توانید هنگام استفاده از API مسیرها در برنامه‌های خود انتظار داشته باشید، پوشش می‌دهد.

افزایش محدودیت درخواست

API مسیرها، ماتریس مسیر را محاسبه می‌کند
  • حداکثر ۶۲۵ عنصر، مگر اینکه TRAFFIC_AWARE_OPTIMAL مشخص کنید.
  • حداکثر ۱۰۰ عنصر با TRAFFIC_AWARE_OPTIMAL . به تنظیمات مسیریابی پیشرفته مراجعه کنید.
  • حداکثر ۵۰ نقطه مسیر (مبدا + مقصد) با استفاده از شناسه مکان.
API ماتریس فاصله
  • حداکثر ۲۵ مبدا یا ۲۵ مقصد برای هر درخواست.
  • حداکثر ۱۰۰ عنصر (تعداد مبدا × تعداد مقصد) برای هر درخواست سمت سرور.

پاسخ‌های سریع‌تر به درخواست‌ها

ویژگی Compute Route Matrix بهبودهای زیر را در تأخیر ارائه می‌دهد:

  • عناصر جریانی پاسخ را قبل از محاسبه کل ماتریس دریافت کنید .
  • از ماسک‌های فیلد برای سفارشی‌سازی جزئیات پاسخ استفاده کنید و فقط داده‌های مورد نیاز خود را درخواست کنید، روشی که به کاهش هزینه‌های شما نیز کمک می‌کند.
  • محاسبات مسیر پیشرفته برای ترافیک ، بنابراین می‌توانید بین کیفیت داده‌ها و زمان پاسخ، تعادل برقرار کنید.

پیشرفت‌های مسیریابی

ویژگی مسیر محاسباتی این پیشرفت‌های مسیریابی را ارائه می‌دهد:

  • اطلاعات عوارض علاوه بر مسافت و زمان رسیدن به مقصد.
  • مسیرهای وسایل نقلیه دو چرخ .
  • نقاط توقف بین‌راهی خود را از نظر ایمنی بررسی کنید .
  • افزایش دقت ETA با تنظیم جهت حرکت و سمت جاده برای نقاط مسیر.

فقط داده‌هایی را که نیاز دارید درخواست کنید

اکنون مشخص می‌کنید کدام فیلدها را برگردانید، که باعث کاهش زمان پردازش و هزینه‌های صورتحساب می‌شود.

API مسیرها
محاسبه مسیرها
محاسبه ماتریس مسیر
درخواست‌های شما باید از یک ماسک فیلد برای مشخص کردن فیلدهایی که می‌خواهید در پاسخ برگردانده شوند، استفاده کنند. ماسک فیلد تضمین می‌کند که شما داده‌های غیرضروری درخواست نمی‌کنید، که از زمان پردازش غیرضروری و هزینه‌های صورتحساب جلوگیری می‌کند.
برای اطلاعات بیشتر، به «انتخاب فیلدها برای بازگشت» مراجعه کنید.
API مسیرها
API ماتریس فاصله
حتی اگر برنامه شما به طور جدی به فیلدها نیاز نداشته باشد، یک لیست پیش‌فرض از فیلدها را برمی‌گرداند. این می‌تواند منجر به زمان پردازش غیرضروری و هزینه‌های صدور صورتحساب شود.

محاسبات مسیر پیشرفته برای ترافیک

API مسیرها از سه اولویت مسیریابی پشتیبانی می‌کند که می‌توانید هنگام درخواست اطلاعات ترافیک، برای ایجاد تعادل بین تأخیر پاسخ و کیفیت داده از آنها استفاده کنید.

برای اطلاعات بیشتر، به پیکربندی کیفیت در مقابل تأخیر مراجعه کنید.

TRAFFIC_UNAWARE
(پیش‌فرض)
از داده‌های ترافیکی مستقل از زمان متوسط، نه داده‌های ترافیکی زنده، برای محاسبه مسیر استفاده می‌کند و در نتیجه کمترین تأخیر پاسخ را دارد. این تنظیم معادل زمانی است که ترافیک در API Directions و API Distance Matrix استفاده نمی‌شود.
TRAFFIC_AWARE
(جدید)
کیفیت ترافیک زنده بهینه شده از نظر عملکرد برای کاهش تأخیر. برخلاف TRAFFIC_AWARE_OPTIMAL ، این تنظیم بهینه‌سازی‌هایی را برای کاهش قابل توجه تأخیر اعمال می‌کند. این تنظیم همچنین برای API مسیرها جدید است و معادلی در API مسیرها یا API ماتریس فاصله ندارد.
TRAFFIC_AWARE_OPTIMAL داده‌های ترافیکی جامع و با کیفیت بالا. این تنظیم بالاترین تأخیر را ایجاد می‌کند و معادل تنظیم departure_time در APIهای Directions و Distance Matrix است.
این تنظیمات معادل حالتی است که توسط maps.google.com و برنامه تلفن همراه Google Maps استفاده می‌شود.

مقایسه محاسبه مسیر

جدول زیر گزینه‌های مسیریابی بین Routes API و سرویس‌های Directions API و Distance Matrix را مقایسه می‌کند.

گزینه ترافیک API مسیرها API مسیرها
API ماتریس فاصله
تأخیر
بدون ترافیک لحظه‌ای TRAFFIC_UNAWARE ویژگی departure_time تنظیم نشده است سریع‌ترین تأخیر در بین سه حالت.
شرایط ترافیکی زنده اعمال شد TRAFFIC_AWARE معادلی وجود ندارد

حالت جدیدی که توسط Routes API اضافه شده است. این حالت تأخیر کمی بیشتر از TRAFFIC_UNAWARE با هزینه کمی از کیفیت ETA ارائه می‌دهد.

این تابع تأخیر بسیار کمتری نسبت به TRAFFIC_AWARE_OPTIMAL دارد.

داده‌های ترافیکی زنده و جامع با کیفیت بالا اعمال می‌شوند. TRAFFIC_AWARE_OPTIMAL مجموعه ویژگی departure_time

معادل حالتی که توسط maps.google.com و برنامه موبایل Google Maps استفاده می‌شود.

برای محاسبه ماتریس مسیر، تعداد عناصر در یک درخواست (تعداد مبدا × تعداد مقصد) نمی‌تواند از ۱۰۰ تجاوز کند.

تفاوت‌های کلیدی

این بخش تفاوت‌های کلیدی بین API مسیرها و سرویس‌هایی که جایگزین آن‌ها می‌شود را پوشش می‌دهد، به همراه روش‌هایی که می‌توانید هنگام مهاجرت از این سرویس‌ها در برنامه‌های موجود خود، این تفاوت‌ها را برطرف کنید.

به جای دو سرویس با یک سرویس تماس بگیرید

API مسیرها فقط یک سرویس را در کنسول API برای برنامه خود فعال کنید تا از Compute Routes و Compute Route Matrix استفاده کند.
برای اطلاعات بیشتر، به بخش «تنظیمات در کنسول API گوگل» مراجعه کنید.
API مسیرها
API ماتریس فاصله
دو سرویس Directions API و Distance Matrix API را به عنوان سرویس‌های جداگانه در کنسول API فعال کنید.

از درخواست‌های HTTPS POST استفاده می‌کند

API مسیرها پارامترها را در بدنه درخواست یا در هدرها به عنوان بخشی از یک درخواست HTTP POST ارسال کنید.
برای مثال‌ها، رجوع کنید به:
- محاسبه یک مسیر
- محاسبه ماتریس مسیر
API مسیرها
API ماتریس فاصله
پارامترهای URL را با استفاده از درخواست HTTP GET ارسال کنید.

تفاوت‌های پاسخ ETA

API مسیرها ETA را برمی‌گرداند و از ویژگی پاسخ duration به طور متفاوتی نسبت به سرویس‌های Directions API و Distance Matrix API استفاده می‌کند، همانطور که در جدول زیر نشان داده شده است.

نوع زمان رسیدن به مقصد (ETA) API مسیرها API مسیرها
API ماتریس فاصله
عدم آگاهی از ترافیک، زمان رسیدن به مقصد مستقل از زمان.

با استفاده از TRAFFIC_UNAWARE تنظیم کنید.

  • ETA در ویژگی پاسخ duration موجود است.
  • ویژگی‌های پاسخ duration و staticDuration حاوی مقدار یکسانی هستند.

مربوط به عدم تنظیم departure_time در درخواست است.

  • ETA در ویژگی پاسخ duration موجود است.
  • ویژگی پاسخ duration_in_traffic بازگردانده نمی‌شود.
ETA که ترافیک لحظه‌ای را در نظر می‌گیرد.

با استفاده از TRAFFIC_AWARE یا TRAFFIC_AWARE_OPTIMAL تنظیم کنید.

  • ETA که ترافیک بلادرنگ را در نظر می‌گیرد، در ویژگی پاسخ duration response) گنجانده شده است.
  • ویژگی پاسخ staticDuration شامل مدت زمان سفر در مسیر بدون در نظر گرفتن شرایط ترافیک است.
  • ویژگی duration_in_traffic دیگر برگردانده نمی‌شود.

با استفاده از departure_time در درخواست تنظیم کنید.

  • ETA که ترافیک بلادرنگ را در نظر می‌گیرد، در ویژگی پاسخ duration_in_traffic قرار دارد.

نقاط مسیر چندخطی

با این سرویس که از بدنه درخواست POST پشتیبانی می‌کند و بنابراین دیگر تحت تأثیر محدودیت‌های رشته URL قرار نمی‌گیرد، دیگر نیازی به تبدیل مختصات طول و عرض جغرافیایی خود به نقاط مسیر چندخطی ندارید. برخی از کاربران Distance Matrix API با تبدیل نقاط طول و عرض جغرافیایی به نقاط مسیر چندخطی، مشکل محدودیت‌های درخواست را برطرف کردند.

آدرس‌های قالب‌بندی‌شده (کد جغرافیایی معکوس)

API مسیرها آدرس‌های قالب‌بندی‌شده را در پاسخ ارائه نمی‌دهد. برای دریافت آدرس‌های قالب‌بندی‌شده، از API ژئوکدینگ استفاده کنید که برای این مورد استفاده ساخته شده و نتایج با کیفیت بالاتری ارائه می‌دهد.

حالت‌های سفر موجود

همانطور که در مورد Directions API صدق می‌کند، Routes API نیز از DRIVE به عنوان حالت پیش‌فرض استفاده می‌کند، زمانی که درخواست مسیر، حالت سفر را مشخص نمی‌کند. با این حال، هنگامی که درخواست، حالت سفر را برای یک مسیر مشخص می‌کند، Routes API آرایه‌ای از حالت‌های سفر موجود را به عنوان گزینه‌های جایگزین برای درخواست برنمی‌گرداند. اگر مورد استفاده شما به این ویژگی متکی است، مشکلی را ثبت کنید و نحوه استفاده از این ویژگی را شرح دهید تا بتوانیم پیگیری کنیم.

XML به عنوان قالب پاسخ

API مسیرها XML را به عنوان فرمت پاسخ ارائه نمی‌دهد. می‌توانید تعدادی مبدل JSON به XML را به صورت آنلاین پیدا کنید که متناسب با اهداف شما باشد.