다음을 통해 공유


RequestRouteDirectionsBatch interface

메서드

get(RequestParameters)

Get Route Directions Batch API는 단일 요청을 사용하여 경로 방향 가져오기 API에 쿼리 일괄 처리를 보내는 HTTP GET 요청입니다. Get Route Directions Batch API를 호출하여 비동기(비동기) 또는 동기(동기화)를 실행할 수 있습니다. 비동기 API를 사용하면 호출자가 최대 700개의 쿼리를 일괄 처리하고 최대 100개의 쿼리까지 API를 동기화할 수 있습니다.

비동기 일괄 처리 결과 다운로드

비동기 일괄 처리 결과를 다운로드하려면 일괄 다운로드 엔드포인트에 GET 요청을 실행합니다. 이 다운로드 URL 성공적인 Location 일괄 처리 요청의 POST 헤더에서 가져올 수 있으며 다음과 같습니다.

https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

일괄 처리 결과를 다운로드하기 위한 일반적인 작업 시퀀스는 다음과 같습니다.

  1. 클라이언트는 GET사용하여 요청을 보냅니다.

  2. 서버는 다음 중 하나로 응답합니다.

    HTTP 202 Accepted - Batch 요청이 수락되었지만 여전히 처리 중입니다. 잠시 후 다시 시도하세요.

    HTTP 200 OK - 일괄 처리 요청이 성공적으로 처리되었습니다. 응답 본문에는 모든 일괄 처리 결과가 포함됩니다.

Batch 응답 모델

반환된 데이터 콘텐츠는 비동기 및 동기화 요청과 유사합니다. 비동기 일괄 처리 요청의 결과를 다운로드할 때 일괄 처리가 완료되면 응답 본문에 일괄 처리 응답이 포함됩니다. 이 일괄 처리 응답에는 원래 일괄 처리 요청의 일부인 summary 성공적으로 실행된 쿼리와 totalRequests나타내는 successfulRequests 구성 요소가 포함되어 있습니다. 일괄 처리 응답에는 일괄 처리 요청의 모든 쿼리에 대한 응답이 포함된 batchItems 배열도 포함됩니다. batchItems 일괄 처리 요청에서 원래 쿼리가 전송된 순서와 정확히 동일한 순서로 결과를 포함합니다. batchItems 각 항목에는 statusCoderesponse 필드가 포함됩니다. responsebatchItems 다음 유형 중 하나입니다.

  • RouteDirections - 쿼리가 성공적으로 완료된 경우

  • Error - 쿼리가 실패한 경우 응답에는 이 경우 codemessage 포함됩니다.

다음은 성공적인 11 실패한 일괄 처리 응답 샘플입니다.

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
post(RouteRequestRouteDirectionsBatchParameters)

Post Route Directions Batch API는 단일 비동기 요청을 사용하여 POST API에 쿼리 일괄 처리를 보내는 HTTP 요청입니다. Route Directions Batch API를 호출하여 비동기(비동기) 또는 동기(동기화)를 실행할 수 있습니다. 비동기 API를 사용하면 호출자가 최대 700개의 쿼리를 일괄 처리하고 최대 100개의 쿼리까지 API를 동기화할 수 있습니다. 동기 요청에서 API를 호출하려면 경로 방향 일괄 처리 동기화참조하세요.

비동기 일괄 처리 요청 제출

비동기 API는 비교적 복잡한 경로 요청의 큰 볼륨을 처리하는 데 적합합니다.

  • 별도의 호출로 결과를 검색할 수 있습니다(여러 다운로드 가능).
  • 비동기 API는 안정성에 최적화되어 있으며 시간 제한으로 실행되지 않을 것으로 예상됩니다.
  • 일괄 처리 항목 수는 이 API에 대한 700 제한됩니다.

비동기 요청을 사용하여 요청을 수행하면 기본적으로 서비스는 응답 헤더의 위치 필드에 있는 리디렉션 URL을 따라 202 응답 코드를 반환합니다. 이 URL은 응답 데이터 또는 오류 정보를 사용할 수 있을 때까지 주기적으로 확인해야 합니다. 비동기 응답은 24시간 동안 저장됩니다. 리디렉션 URL은 만료 기간 이후에 사용되는 경우 404 응답을 반환합니다.

비동기 일괄 처리 요청은 장기 실행 작업입니다. 일반적인 작업 시퀀스는 다음과 같습니다.

  1. 클라이언트는 경로 방향 일괄 처리 POST 요청을 Azure Maps에 보냅니다.
POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0&subscription-key={subscription-key}
  1. 서버는 다음 중 하나로 응답합니다.

    HTTP 202 Accepted - Batch 요청이 수락되었습니다.

    HTTP Error - Batch 요청을 처리하는 동안 오류가 발생했습니다. 400 Bad Request 또는 다른 Error 상태 코드일 수 있습니다.

  2. 일괄 처리 요청이 성공적으로 수락된 경우 응답의 Location 헤더에는 일괄 처리 요청의 결과를 다운로드하는 URL이 포함됩니다. 이 상태 URI는 다음과 같습니다.

GET https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
  1. 클라이언트는 3단계에서 가져온 GET 요청을 실행하여 일괄 처리 결과를 다운로드합니다.

Batch 요청에 대한 POST 본문

쿼리를 경로 방향을 보내려면 요청 본문에 배열이 형식으로 포함되고 헤더가 설정되는 요청을 사용합니다. 다음은 쿼리에 3개의 경로 방향을 포함하는 샘플 요청 본문입니다.

{
    "batchItems": [
        { "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false" },
        { "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest" },
        { "query": "?query=48.923159,-122.557362:32.621279,-116.840362" }
    ]
}

일괄 처리에서 쿼리를 경로 방향은 프로토콜, 기본 URL, 경로, api-version 및 subscription-key를 않고 부분 URL . 지원되는 경로 방향URI 매개 변수수락할 수 있습니다. 쿼리에 경로 방향의 문자열 값은 제대로 이스케이프되어야 하며(예: " 문자는 \로 이스케이프되어야 함) URL로 인코딩되어야 합니다.

비동기 API를 사용하면 호출자가 최대 700개의 쿼리를 일괄 처리하고 API를 최대 100개의 쿼리를 동기화할 수 있으며, 일괄 처리에는 1개 이상의 쿼리가 포함되어야 합니다.

비동기 일괄 처리 결과 다운로드

비동기 일괄 처리 결과를 다운로드하려면 일괄 다운로드 엔드포인트에 GET 요청을 실행합니다. 이 다운로드 URL 성공적인 Location 일괄 처리 요청의 POST 헤더에서 가져올 수 있으며 다음과 같습니다.

https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

일괄 처리 결과를 다운로드하기 위한 일반적인 작업 시퀀스는 다음과 같습니다.

  1. 클라이언트는 GET사용하여 요청을 보냅니다.

  2. 서버는 다음 중 하나로 응답합니다.

    HTTP 202 Accepted - Batch 요청이 수락되었지만 여전히 처리 중입니다. 잠시 후 다시 시도하세요.

    HTTP 200 OK - 일괄 처리 요청이 성공적으로 처리되었습니다. 응답 본문에는 모든 일괄 처리 결과가 포함됩니다.

Batch 응답 모델

반환된 데이터 콘텐츠는 비동기 및 동기화 요청과 유사합니다. 비동기 일괄 처리 요청의 결과를 다운로드할 때 일괄 처리가 완료되면 응답 본문에 일괄 처리 응답이 포함됩니다. 이 일괄 처리 응답에는 원래 일괄 처리 요청의 일부인 summary 성공적으로 실행된 쿼리와 totalRequests나타내는 successfulRequests 구성 요소가 포함되어 있습니다. 일괄 처리 응답에는 일괄 처리 요청의 모든 쿼리에 대한 응답이 포함된 batchItems 배열도 포함됩니다. batchItems 일괄 처리 요청에서 원래 쿼리가 전송된 순서와 정확히 동일한 순서로 결과를 포함합니다. batchItems 각 항목에는 statusCoderesponse 필드가 포함됩니다. responsebatchItems 다음 유형 중 하나입니다.

  • RouteDirections - 쿼리가 성공적으로 완료된 경우

  • Error - 쿼리가 실패한 경우 응답에는 이 경우 codemessage 포함됩니다.

다음은 성공적인 11 실패한 일괄 처리 응답 샘플입니다.

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}

메서드 세부 정보

get(RequestParameters)

Get Route Directions Batch API는 단일 요청을 사용하여 경로 방향 가져오기 API에 쿼리 일괄 처리를 보내는 HTTP GET 요청입니다. Get Route Directions Batch API를 호출하여 비동기(비동기) 또는 동기(동기화)를 실행할 수 있습니다. 비동기 API를 사용하면 호출자가 최대 700개의 쿼리를 일괄 처리하고 최대 100개의 쿼리까지 API를 동기화할 수 있습니다.

비동기 일괄 처리 결과 다운로드

비동기 일괄 처리 결과를 다운로드하려면 일괄 다운로드 엔드포인트에 GET 요청을 실행합니다. 이 다운로드 URL 성공적인 Location 일괄 처리 요청의 POST 헤더에서 가져올 수 있으며 다음과 같습니다.

https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

일괄 처리 결과를 다운로드하기 위한 일반적인 작업 시퀀스는 다음과 같습니다.

  1. 클라이언트는 GET사용하여 요청을 보냅니다.

  2. 서버는 다음 중 하나로 응답합니다.

    HTTP 202 Accepted - Batch 요청이 수락되었지만 여전히 처리 중입니다. 잠시 후 다시 시도하세요.

    HTTP 200 OK - 일괄 처리 요청이 성공적으로 처리되었습니다. 응답 본문에는 모든 일괄 처리 결과가 포함됩니다.

Batch 응답 모델

반환된 데이터 콘텐츠는 비동기 및 동기화 요청과 유사합니다. 비동기 일괄 처리 요청의 결과를 다운로드할 때 일괄 처리가 완료되면 응답 본문에 일괄 처리 응답이 포함됩니다. 이 일괄 처리 응답에는 원래 일괄 처리 요청의 일부인 summary 성공적으로 실행된 쿼리와 totalRequests나타내는 successfulRequests 구성 요소가 포함되어 있습니다. 일괄 처리 응답에는 일괄 처리 요청의 모든 쿼리에 대한 응답이 포함된 batchItems 배열도 포함됩니다. batchItems 일괄 처리 요청에서 원래 쿼리가 전송된 순서와 정확히 동일한 순서로 결과를 포함합니다. batchItems 각 항목에는 statusCoderesponse 필드가 포함됩니다. responsebatchItems 다음 유형 중 하나입니다.

  • RouteDirections - 쿼리가 성공적으로 완료된 경우

  • Error - 쿼리가 실패한 경우 응답에는 이 경우 codemessage 포함됩니다.

다음은 성공적인 11 실패한 일괄 처리 응답 샘플입니다.

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
function get(options?: RequestParameters): StreamableMethod<RouteGetRouteDirectionsBatch200Response | RouteGetRouteDirectionsBatch202Response>

매개 변수

반환

post(RouteRequestRouteDirectionsBatchParameters)

Post Route Directions Batch API는 단일 비동기 요청을 사용하여 POST API에 쿼리 일괄 처리를 보내는 HTTP 요청입니다. Route Directions Batch API를 호출하여 비동기(비동기) 또는 동기(동기화)를 실행할 수 있습니다. 비동기 API를 사용하면 호출자가 최대 700개의 쿼리를 일괄 처리하고 최대 100개의 쿼리까지 API를 동기화할 수 있습니다. 동기 요청에서 API를 호출하려면 경로 방향 일괄 처리 동기화참조하세요.

비동기 일괄 처리 요청 제출

비동기 API는 비교적 복잡한 경로 요청의 큰 볼륨을 처리하는 데 적합합니다.

  • 별도의 호출로 결과를 검색할 수 있습니다(여러 다운로드 가능).
  • 비동기 API는 안정성에 최적화되어 있으며 시간 제한으로 실행되지 않을 것으로 예상됩니다.
  • 일괄 처리 항목 수는 이 API에 대한 700 제한됩니다.

비동기 요청을 사용하여 요청을 수행하면 기본적으로 서비스는 응답 헤더의 위치 필드에 있는 리디렉션 URL을 따라 202 응답 코드를 반환합니다. 이 URL은 응답 데이터 또는 오류 정보를 사용할 수 있을 때까지 주기적으로 확인해야 합니다. 비동기 응답은 24시간 동안 저장됩니다. 리디렉션 URL은 만료 기간 이후에 사용되는 경우 404 응답을 반환합니다.

비동기 일괄 처리 요청은 장기 실행 작업입니다. 일반적인 작업 시퀀스는 다음과 같습니다.

  1. 클라이언트는 경로 방향 일괄 처리 POST 요청을 Azure Maps에 보냅니다.
POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0&subscription-key={subscription-key}
  1. 서버는 다음 중 하나로 응답합니다.

    HTTP 202 Accepted - Batch 요청이 수락되었습니다.

    HTTP Error - Batch 요청을 처리하는 동안 오류가 발생했습니다. 400 Bad Request 또는 다른 Error 상태 코드일 수 있습니다.

  2. 일괄 처리 요청이 성공적으로 수락된 경우 응답의 Location 헤더에는 일괄 처리 요청의 결과를 다운로드하는 URL이 포함됩니다. 이 상태 URI는 다음과 같습니다.

GET https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
  1. 클라이언트는 3단계에서 가져온 GET 요청을 실행하여 일괄 처리 결과를 다운로드합니다.

Batch 요청에 대한 POST 본문

쿼리를 경로 방향을 보내려면 요청 본문에 배열이 형식으로 포함되고 헤더가 설정되는 요청을 사용합니다. 다음은 쿼리에 3개의 경로 방향을 포함하는 샘플 요청 본문입니다.

{
    "batchItems": [
        { "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false" },
        { "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest" },
        { "query": "?query=48.923159,-122.557362:32.621279,-116.840362" }
    ]
}

일괄 처리에서 쿼리를 경로 방향은 프로토콜, 기본 URL, 경로, api-version 및 subscription-key를 않고 부분 URL . 지원되는 경로 방향URI 매개 변수수락할 수 있습니다. 쿼리에 경로 방향의 문자열 값은 제대로 이스케이프되어야 하며(예: " 문자는 \로 이스케이프되어야 함) URL로 인코딩되어야 합니다.

비동기 API를 사용하면 호출자가 최대 700개의 쿼리를 일괄 처리하고 API를 최대 100개의 쿼리를 동기화할 수 있으며, 일괄 처리에는 1개 이상의 쿼리가 포함되어야 합니다.

비동기 일괄 처리 결과 다운로드

비동기 일괄 처리 결과를 다운로드하려면 일괄 다운로드 엔드포인트에 GET 요청을 실행합니다. 이 다운로드 URL 성공적인 Location 일괄 처리 요청의 POST 헤더에서 가져올 수 있으며 다음과 같습니다.

https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

일괄 처리 결과를 다운로드하기 위한 일반적인 작업 시퀀스는 다음과 같습니다.

  1. 클라이언트는 GET사용하여 요청을 보냅니다.

  2. 서버는 다음 중 하나로 응답합니다.

    HTTP 202 Accepted - Batch 요청이 수락되었지만 여전히 처리 중입니다. 잠시 후 다시 시도하세요.

    HTTP 200 OK - 일괄 처리 요청이 성공적으로 처리되었습니다. 응답 본문에는 모든 일괄 처리 결과가 포함됩니다.

Batch 응답 모델

반환된 데이터 콘텐츠는 비동기 및 동기화 요청과 유사합니다. 비동기 일괄 처리 요청의 결과를 다운로드할 때 일괄 처리가 완료되면 응답 본문에 일괄 처리 응답이 포함됩니다. 이 일괄 처리 응답에는 원래 일괄 처리 요청의 일부인 summary 성공적으로 실행된 쿼리와 totalRequests나타내는 successfulRequests 구성 요소가 포함되어 있습니다. 일괄 처리 응답에는 일괄 처리 요청의 모든 쿼리에 대한 응답이 포함된 batchItems 배열도 포함됩니다. batchItems 일괄 처리 요청에서 원래 쿼리가 전송된 순서와 정확히 동일한 순서로 결과를 포함합니다. batchItems 각 항목에는 statusCoderesponse 필드가 포함됩니다. responsebatchItems 다음 유형 중 하나입니다.

  • RouteDirections - 쿼리가 성공적으로 완료된 경우

  • Error - 쿼리가 실패한 경우 응답에는 이 경우 codemessage 포함됩니다.

다음은 성공적인 11 실패한 일괄 처리 응답 샘플입니다.

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
function post(options: RouteRequestRouteDirectionsBatchParameters): StreamableMethod<RouteRequestRouteDirectionsBatch200Response | RouteRequestRouteDirectionsBatch202Response>

매개 변수

반환