Я пытаюсь использовать Here Telematics Api, чтобы разрешить только определенные сегменты дороги. Сначала мы выполняем сопоставление маршрутов, чтобы получить linkIds, а затем генерируем разрешающий и запрещающий список ссылок (или сегментов дороги), по которым мы хотим перемещаться. Количество ссылок в запрещенном списке превышает 30 000.
Теперь мы хотим использовать это в навигационном интерфейсе карт Here. Для этого я нашел 2 способа - 1) использование параметра запроса avoLinks и 2) использование пользовательских маршрутов и наложений карт.
Это то, что я пробовал до сих пор.
1. Использование навигации API:
Я вызвал навигационный API с параметром запроса avoidLinks
. Вот как это будет выглядеть:
curl https://fleet.api.here.com/2/calculateroute.json?app_id=XXXX&app_code=XXXX&mode=fastest;car;traffic:disabled&waypoint0=52.512623,13.321814&waypoint1=52.587389,13.279046&avoidLinks=linkId1,linkId2....
Но поскольку это вызов get, я не могу выйти за пределы 20000 ссылок, потому что в противном случае я получаю код состояния 414, то есть запрос URI слишком длинный. Итак, этот маршрут закрыт!
2. Использование оверлеев и навигации:
Затем я посмотрел на эту ссылку и попытался использовать собственные маршруты.
Я использовал эту документацию для создания оверлейной карты с использованием оверлейных программ api:
curl https://cre.api.here.com/2/overlays/upload.json
Но это опять-таки GET API, и он не допускает более ~ 1000 ссылок, так как я снова получаю http-код 414, т.е. запрос URI слишком длинный.
Это наложение можно использовать
curl http://cre.api.here.com/2/calculateroute.json
?waypoint0=50.10951,8.68951
&waypoint1=50.10703,8.68222
&mode=fastest;car;traffic:disabled
&overlays=overlaydemo1
&storage=readonly
&app_id=XXXX
&app_code=XXXX
Теперь я поражен, потому что у меня не может быть 1 большой оверлейной карты, но я могу создать несколько карт, и это нормально. Но тогда в навигационном интерфейсе я могу использовать только 1 оверлейную карту.
Не могли бы вы помочь мне как-то решить эту проблему?