共用方式為


Spatial - Post Closest Point

使用 取得基底點與一組指定目標點之間的最接近點。

Post Closest Point API 是 HTTP POST 要求,會傳回基底點與一組指定目標點之間的最接近點。 目標點集是由張貼要求本文中的用戶數據所提供。 用戶數據只能包含 Point 幾何的集合。 如果提供,則會忽略 MultiPoint 或其他幾何。 演算法不會考慮路由或流量。 接受的點數上限為 100,000。 傳回的資訊包括最接近的點緯度、經度和距離,以公尺為單位從最接近的點。

POST https://{geography}.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&lat={lat}&lon={lon}
POST https://{geography}.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&lat={lat}&lon={lon}&numberOfClosestPoints={numberOfClosestPoints}

URI 參數

名稱 位於 必要 類型 Description
format
path True

JsonFormat

所需的回應格式。 僅支援 json 格式。

geography
path True

string

Azure 地圖服務帳戶的位置。 有效值為 (美國東部、美國中西部、美國西部 2) 和歐盟 (北歐、西歐) 。 要求中提供 時 udid ,需要此參數。 例如,如果 Azure 地圖服務帳戶位於美國東部,則只會接受對地理位置的要求。

api-version
query True

string

Azure 地圖服務 API 的版本號碼。

lat
query True

number

所傳遞位置的緯度。 範例:48.36。

lon
query True

number

所傳遞位置的經度。 範例:-124.63。

numberOfClosestPoints
query

integer

回應預期最接近的點數。 默認值:1,最小值:1 和最大值:50

要求標頭

名稱 必要 類型 Description
x-ms-client-id

string

指定哪個帳戶與 Microsoft Entra ID 安全性模型搭配使用。 它代表 Azure 地圖服務帳戶的唯一標識碼,而且可以從 Azure 地圖服務管理平面帳戶 API 擷取。 若要在 Azure 地圖服務中使用 Microsoft 專案標識碼安全性,請參閱下列 文章 以取得指引。

要求本文

名稱 必要 類型 Description
features True

GeoJsonFeature[]

包含有效 GeoJSON Feature 對象的清單。

type True string:

FeatureCollection

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

回應

名稱 類型 Description
200 OK

ClosestPointResponse

確定

Other Status Codes

ErrorResponse

發生意外錯誤。

安全性

AADToken

這些是 Microsoft Entra OAuth 2.0 流程。 與 Azure 角色型存取控制 配對時,可用來控制 Azure 地圖服務 REST API 的存取。 Azure 角色型訪問控制可用來指定一或多個 Azure 地圖服務資源帳戶或子資源的存取權。 任何使用者、群組或服務主體都可以透過內建角色或由一或多個 Azure 地圖服務 REST API 許可權所組成的自定義角色來授與存取權。

若要實作案例,建議您檢視 驗證概念。 總而言之,此安全性定義會透過能夠針對特定 API 和範圍進行訪問控制的物件,提供將應用程式模型化 () 的解決方案。

備註

  • 此安全性定義 需要使用x-ms-client-id 標頭來指出應用程式要求存取權的 Azure 地圖服務資源。 這可以從 地圖管理 API 取得。

Authorization URL專屬於 Azure 公用雲端實例。 主權雲端具有唯一的授權 URL,Microsoft Entra ID 設定。 * 透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 Azure 管理平面設定 Azure 角色型存取控制。 * 使用 Azure 地圖服務 Web SDK 可讓您針對多個使用案例設定應用程式。

類型: oauth2
Flow: implicit
授權 URL: https://login.microsoftonline.com/common/oauth2/authorize

範圍

名稱 Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

這是透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API 透過 Azure 管理平面建立 Azure 地圖服務資源 時所佈建的共用密鑰。

使用此金鑰時,任何應用程式都會獲得存取所有 REST API 的授權。 換句話說,這些目前可視為發行帳戶的主要密鑰。

對於公開的應用程式,我們建議使用 Azure 地圖服務 REST API 的伺服器對伺服器存取,以便安全地儲存此密鑰。

類型: apiKey
位於: header

SAS Token

這是透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 Azure 地圖服務資源 上的列出 SAS 作業建立的共用存取簽章令牌。

使用此令牌時,任何應用程式都有權使用 Azure 角色型訪問控制進行存取,並更精細地控制到期、速率和區域 (特定令牌的使用) 。 換句話說,SAS 令牌可用來允許應用程式以比共用密鑰更安全的方式來控制存取。

對於公開的應用程式,我們建議在 地圖帳戶資源 上設定允許的來源特定清單,以限制轉譯濫用,並定期更新 SAS 令牌。

類型: apiKey
位於: header

範例

PostClosestPoint

範例要求

POST https://us.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&lat=47.622942&lon=-122.316456

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "geometryId": 1001
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          -105.02860293715861,
          40.51615340677395
        ]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "geometryId": 1002
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          -105.02860381672178,
          40.51599099003731
        ]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "geometryId": 1003
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          -105.02812292879467,
          40.51605867808856
        ]
      }
    }
  ]
}

範例回覆

{
  "summary": {
    "sourcePoint": {
      "lat": 47.622942,
      "lon": -122.316456
    },
    "udid": null,
    "information": "3 points processed in user data"
  },
  "result": [
    {
      "distanceInMeters": 1587492.66,
      "position": {
        "lat": 40.51615340677395,
        "lon": -105.02860293715861
      },
      "geometryId": "1001"
    }
  ]
}

定義

名稱 Description
ClosestPoint

最接近的點結果進入物件

ClosestPointResponse

此物件會從成功的 Spatial Closest Point 呼叫傳回

ClosestPointSummary

最接近的 Point Summary 物件

ErrorAdditionalInfo

資源管理錯誤其他資訊。

ErrorDetail

錯誤詳細數據。

ErrorResponse

錯誤回應

GeoJsonFeature

有效的 GeoJSON Feature 物件類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonFeatureCollection

有效的 GeoJSON FeatureCollection 物件類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonGeometry

有效的 GeoJSON geometry 物件。 此類型必須是七個有效 GeoJSON 幾何類型的其中一個 -Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 如需詳細資訊,請參閱 RFC 7946

GeoJsonGeometryCollection

有效的 GeoJSON GeometryCollection 物件類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonLineString

有效的 GeoJSON LineString 幾何類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonMultiLineString

有效的 GeoJSON MultiLineString 幾何類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonMultiPoint

有效的 GeoJSON MultiPoint 幾何類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonMultiPolygon

有效的 GeoJSON MultiPolygon 物件類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonPoint

有效的 GeoJSON Point 幾何類型。 如需詳細資訊,請參閱 RFC 7946

GeoJsonPolygon

有效的 GeoJSON Polygon 幾何類型。 如需詳細資訊,請參閱 RFC 7946

JsonFormat

所需的回應格式。 僅支援 json 格式。

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

ClosestPoint

最接近的點結果進入物件

名稱 類型 Description
distanceInMeters

number

從來源點到最接近點的公尺距離

geometryId

string

唯一標識碼會識別幾何

position

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

ClosestPointResponse

此物件會從成功的 Spatial Closest Point 呼叫傳回

名稱 類型 Description
result

ClosestPoint[]

最接近的點結果陣列

summary

ClosestPointSummary

最接近的 Point Summary 物件

ClosestPointSummary

最接近的 Point Summary 物件

名稱 類型 Description
information

string

處理資訊

sourcePoint

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

udid

string

上傳內容的唯一數據標識碼 (udid)

ErrorAdditionalInfo

資源管理錯誤其他資訊。

名稱 類型 Description
info

object

其他資訊。

type

string

其他信息類型。

ErrorDetail

錯誤詳細數據。

名稱 類型 Description
additionalInfo

ErrorAdditionalInfo[]

錯誤其他資訊。

code

string

錯誤碼。

details

ErrorDetail[]

錯誤詳細資料。

message

string

錯誤訊息。

target

string

錯誤目標。

ErrorResponse

錯誤回應

名稱 類型 Description
error

ErrorDetail

錯誤物件。

GeoJsonFeature

有效的 GeoJSON Feature 物件類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
featureType

string

功能的類型。 值取決於目前功能所屬的數據模型。 某些數據模型可能會有空的值。

geometry GeoJsonGeometry:

有效的 GeoJSON geometry 物件。 此類型必須是七個有效 GeoJSON 幾何類型的其中一個 -Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 如需詳細資訊,請參閱 RFC 7946

id

string

功能的標識碼。

type string:

Feature

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonFeatureCollection

有效的 GeoJSON FeatureCollection 物件類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
features

GeoJsonFeature[]

包含有效 GeoJSON Feature 對象的清單。

type string:

FeatureCollection

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonGeometry

有效的 GeoJSON geometry 物件。 此類型必須是七個有效 GeoJSON 幾何類型的其中一個 -Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
type

GeoJsonObjectType

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonGeometryCollection

有效的 GeoJSON GeometryCollection 物件類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
geometries GeoJsonGeometry[]:

包含有效 GeoJSON geometry 物件的清單。 請注意 ,GeoJSON 中的座標以 x、y 順序 (經度、緯度) 。

type string:

GeometryCollection

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonLineString

有效的 GeoJSON LineString 幾何類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
coordinates

number[]

幾何的 GeoJson LineString 座標。

type string:

LineString

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonMultiLineString

有效的 GeoJSON MultiLineString 幾何類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
coordinates

number[]

幾何的 GeoJson MultiLineString 座標。

type string:

MultiLineString

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonMultiPoint

有效的 GeoJSON MultiPoint 幾何類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
coordinates

number[]

幾何的 GeoJson MultiPoint 座標。

type string:

MultiPoint

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonMultiPolygon

有效的 GeoJSON MultiPolygon 物件類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
coordinates

number[]

包含有效 GeoJSON Polygon 對象的清單。 請注意 ,GeoJSON 中的座標以 x、y 順序 (經度、緯度) 。

type string:

MultiPolygon

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonPoint

有效的 GeoJSON Point 幾何類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
coordinates

number[]

Position是具有兩個或多個元素的數位數位數位數位。 前兩個元素是 經度緯度,精確地以該順序排列。 高度/提高 許可權是選擇性的第三個元素。 如需詳細資訊,請參閱 RFC 7946

type string:

Point

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonPolygon

有效的 GeoJSON Polygon 幾何類型。 如需詳細資訊,請參閱 RFC 7946

名稱 類型 Description
coordinates

number[]

GeoJson Polygon幾何類型的座標。

type string:

Polygon

指定 GeoJSON 類型。 必須是九個有效 GeoJSON 物件類型的其中一種: Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

JsonFormat

所需的回應格式。 僅支援 json 格式。

名稱 類型 Description
json

string

JavaScript 物件表示法數據交換格式

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

名稱 類型 Description
lat

number

Latitude 屬性

lon

number

經度屬性