Вывод в формате JSON
Ниже показан пример HTTP-запроса, в котором вычисляется маршрут из Чикаго, штат Иллинойс, в Лос-Анджелес, штат Калифорния, проходящий через две путевые точки – Джоплин, штат Миссури, и Оклахома-Сити, штат Оклахома:
http://maps.googleapis.com/maps/api/directions/json?origin=Chicago,IL&destination=Los+Angeles,CA& waypoints=Joplin,MO|Oklahoma+City,OK&sensor=false
Результат в формате JSON показан ниже. Поскольку результаты запроса маршрутов могут быть весьма многословными, для большей ясности повторяющиеся элементы были опущены.
{
"status": "OK",
"routes": [ {
"summary": "I-40 W",
"legs": [ {
"steps": [ {
"travel_mode": "DRIVING",
"start_location": {
"lat": 41.8507300,
"lng": -87.6512600
},
"end_location": {
"lat": 41.8525800,
"lng": -87.6514100
},
"polyline": {
"points": "a~l~Fjk~uOwHJy@P"
},
"duration": {
"value": 19,
"text": "1 min"
},
"html_instructions": "Head \u003cb\u003enorth\u003c/b\u003e on \u003cb\u003eS Morgan St\u003c/b\u003e toward \u003cb\u003eW Cermak Rd\u003c/b\u003e",
"distance": {
"value": 207,
"text": "0.1 mi"
}
},
...
... additional steps of this leg
...
... additional legs of this route
"duration": {
"value": 74384,
"text": "20 hours 40 mins"
},
"distance": {
"value": 2137146,
"text": "1,328 mi"
},
"start_location": {
"lat": 35.4675602,
"lng": -97.5164276
},
"end_location": {
"lat": 34.0522342,
"lng": -118.2436849
},
"start_address": "Oklahoma City, OK, USA",
"end_address": "Los Angeles, CA, USA"
} ],
"copyrights": "Map data ©2010 Google, Sanborn",
"overview_polyline": {
"points": "a~l~Fjk~uOnzh@vlbBtc~@tsE`vnApw{A`dw@~w\\|tNtqf@l {Yd_Fblh@rxo@b}@xxSfytAblk@xxaBeJxlcBb~t@zbh@jc|Bx }C`rv@rw|@rlhA~dVzeo@vrSnc}Axf]fjz@xfFbw~@dz{A~d{A|zOxbrBbdUvpo@`cFp~xBc`Hk@nurDz nmFfwMbwz@bbl@lq~@loPpxq@bw_@v|{CbtY~jGqeMb{iF|n\\ ~mbDzeVh_Wr|Efc\\x`Ij{kE}mAb~uF{cNd}xBjp]fulBiwJpgg@|kHntyArpb@bijCk_Kv~eGyqTj_|@`uV`k|DcsN dwxAott@r}q@_gc@nu`CnvHx`k@dse@j|p@zpiAp|gEicy@`om FvaErfo@igQxnlApqGze~AsyRzrjAb__@ftyB}pIlo_BflmA~y QftNboWzoAlzp@mz`@|}_@fda@jakEitAn{fB_a]lexClshBtmqAdmY_hLxiZd~XtaBndgC"
},
"warnings": [ ],
"waypoint_order": [ 0, 1 ],
"bounds": {
"southwest": {
"lat": 34.0523600,
"lng": -118.2435600
},
"northeast": {
"lat": 41.8781100,
"lng": -87.6297900
}
}
} ]
}
Обычно в ответе на запрос маршрута возвращается только одна запись в массиве "routes", но служба маршрутов может вернуть несколько вариантов, если передать параметр alternatives=true.
Обратите внимание, что для извлечения значений из этих результатов обычно требуется синтаксический анализ результатов. Синтаксический анализ JSON относительно прост. Рекомендуемые шаблоны анализа см. в разделе Синтаксический анализ JSON.
|