ルートハンドルの使用方法
ルートハンドルを生成するには、ルート計算リクエストでreturn=routeHandleを指定する必要があります。
curl -gX GET 'https://router.hereapi.com/v8/routes?'\
'origin=52.550028,13.302349&'\
'destination=52.553272,13.305195&'\
'return=routeHandle&'\
'transportMode=car&'\
'apiKey=YOUR_API_KEY'{
"routes": [
{
"id": "84cfeded-3a5c-4cc2-8b74-1dce40f36710",
"sections": [
{
...
}
],
"routeHandle": "{ROUTE_HANDLE}"
}
]
}ハンドルにはルートのパスが保存されますが、リクエストで送信したパラメーター (transportModeやdepartureTimeなど) は保存されません。
ルートハンドルを使用する
以前に生成されたrouteHandleを使用してルートを再現するには、他の必要なパラメーターとともにハンドルを/v8/routes/エンドポイントに送信する必要があります。
curl -gX GET 'https://router.hereapi.com/v8/routes/{ROUTE_HANDLE}?'\
'transportMode=car&'\
'apiKey=YOUR_API_KEY'元のリクエストで使用されたパラメーターと同じものを送信する必要はありません。例については、このチュートリアルを参照してください。
ルートハンドルの無効化
routeHandleは、ルート上のマップデータの変更やサービスの変更により無効になる可能性があり、その場合、サービスは次のエラーでレスポンスします。
{
"title": "Invalid request",
"status": 400,
"code": "E605201",
"cause": "RouteHandle not valid (anymore). (Re-)calculate route to retrieve new handle.",
"action": "",
"correlationId": "bf58bdea-ae23-49f5-8323-ad3a05fafb33"
}通常は元のルートを再計算して、このユースケースへの対処を準備する必要があります。
ルートハンドルの制限
ルートハンドル形式の制限により、250セクションを超えるルートハンドルがサポートされていません。
先月の更新