ایستگاه های بین راهی، مکان هایی در بین مبدا و مقصد هستند که می خواهید مسیر از آنها عبور کند. یک ایستگاه میانی می تواند یک توقف باشد یا می توانید آن را به عنوان مکانی برای عبور مشخص کنید. برای مثالی از یک ایستگاه برای توقف، به تنظیم توقف در طول یک مسیر مراجعه کنید. برای مثالی از یک نقطه عبور برای عبور، نقطه را برای یک مسیر برای عبور تنظیم کنید .
از ویژگی آرایه intermediates
متد computeRoutes (REST) یا روش ComputeRoutes (gRPC) برای تعریف حداکثر 25 نقطه میانی استفاده کنید.
برای هر نقطه میانی در درخواست، شی مسیر (REST) یا شی مسیر (gRPC) در پاسخ یک ورودی به آرایه legs
اضافه میکند تا جزئیات مربوط به آن مرحله از سفر را ارائه کند.
هر پا از یک مسیر با یک شی RouteLeg (REST) یا RouteLeg (gRPC) نشان داده می شود. با استفاده از ماسک فیلد پاسخ، فیلدهای RouteLeg
را کنترل کنید.
مثال - یک نقطه بین راه را تنظیم کنید
مثال زیر از ویژگی آرایه intermediates
برای اضافه کردن یک ایستگاه بین راهی به بدنه درخواست POST یک مسیر استفاده می کند.
این مثال از یک ماسک فیلد پاسخ در هدر X-Goog-FieldMask
استفاده می کند که مشخص می کند فیلدهای زیر را در پاسخ برگرداند:
-
routes.duration
-
routes.distanceMeters
-
routes.legs
مربوط به کل شیRouteLeg
.
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } }, "sideOfRoad": true }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "intermediates": [ { "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0807784 } } } ], "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE", "departureTime": "2022-10-15T15:01:23.045123456Z", "computeAlternativeRoutes": false, "routeModifiers": { "avoidTolls": false, "avoidHighways": false, "avoidFerries": false }, "languageCode": "en-US", "units": "IMPERIAL" }' -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs' 'https://routes.googleapis.com/directions/v2:computeRoutes'
پاسخ این تماس حاوی آرایه legs
است. هر مرحله از پا با یک شی RouteLegStep (REST) یا RouteLegStep (gRPC) نشان داده می شود.
{ "routes": [ { "legs": [ # First leg { "distanceMeters": 207, "duration": "89s", "staticDuration": "89s", "polyline": { "encodedPolyline": "ipkcFjgchVd@@@cF]@@oCK?" }, "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.08077919999998 } }, "steps": [ { "distanceMeters": 21, "staticDuration": "6s", "polyline": { "encodedPolyline": "ipkcFjgchVd@@" }, "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.41954, "longitude": -122.08262750000002 } } }, ... }, # Second leg { "distanceMeters": 598, "duration": "159s", "staticDuration": "159s", "polyline": { "encodedPolyline": "ipkcFz{bhVh@??{@xPBP?J}E{E?" }, "startLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.08077919999998 } }, "endLocation": { "latLng": { "latitude": 37.417616599999995, "longitude": -122.07938820000001 } }, "steps": [ { ...