API геороутинга
Расстояние и время между двумя точками
Endpoint: /router/route
Метод: GET
Допустимые параметры:
- coords1 (string, через запятую) - координаты первой точки lat,lon (обязательно)
- coords2 (string, через запятую) - координаты второй точки lat,lon (обязательно)
- profile (string) - тип расчета (driving - на машине, walking - пешком, cycling - на велосипеде) (не обязательно, по умолчанию driving)
Примеры запроса
GET /api/v1/router/route?coords1=54.2877798%2C48.3015961&coords2=54.2877798%2C49.3015961&profile=cycling
Пример ответа
{
"distance": 321018.2,
"duration": 64435.8,
"legs": [
{
"distance": 321018.2,
"duration": 64435.8,
"steps": {},
"summary": "",
"weight": 64435.8
}
],
"weight": 64435.8,
"weight_name": "routability"
}
Использование из OpenResty
local osrm = require('helpers.osrm.api')
osrm.route({[55.1,45.2],[45.2,45.1]})
Поиск расстояния до ближайшей улицы Street Network
Endpoint: /router/nearest
Метод: GET
Допустимые параметры:
- coords (string, через запятую) - координаты lat,lon (обязательно)
Примеры запроса
GET /api/v1/router/nearest?coords=54.2877798%2C48.3015961
Пример ответа
{
"distance": 6387.450233,
"hint": "un7TkwOA05MAAAAAHQMAAKteAABNRgEAAAAAAExnXUNGXtJFI0e1RgAAAAAdAwAAq14AAE1GAQBXFAEAp4A8A0fl4QKkXTwDHAbhAhoAXxEAAAAA",
"location": [
54.296743,
48.358727
],
"name": "",
"nodes": [
12448253770,
12448253770
]
}
Использование из OpenResty
local osrm = require('helpers.osrm.api')
osrm.nearest([55.1,45.2])