Data - Download Preview
下載要求可讓呼叫端下載先前使用 數據上傳上傳的數據。
適用於: S1 定價層。
此 API 可讓呼叫端下載先前上傳的數據內容。
您可以在這類案例中使用此 API,例如下載先前使用數據上傳 API 上傳的現有地理柵欄集合,以在我們的 Azure 地圖服務 地理柵欄服務中使用。
注意
Azure 地圖服務 數據服務淘汰
Azure 地圖服務 Data Service (v1 和 v2) 現在已被取代,將於 9/16/24 淘汰。 為了避免服務中斷,所有對數據服務的呼叫都必須更新,才能使用 9/16/24 的 Azure 地圖服務 Data Registry 服務。 如需詳細資訊,請參閱 如何建立數據登錄。
提交下載要求
若要下載內容,您將使用 GET
路徑將包含 udid
要下載之數據的要求。 您也可以選擇性地傳入 Accept
標頭,以指定數據回應的 喜好 Content-Type
設定。
例如,若要下載先前使用上傳 API 上傳的地理柵欄集合,請在上傳 API 回應中先前收到的數據路徑udid
中設定 udid
參數,並將標頭設定Accept
為下列其中一種媒體類型:
application/json
application/vnd.geo+json
application/octet-stream
下載數據回應
如果找到具有傳入udid
的數據資源,則下載 API 會傳回 HTTP 200 OK
回應,其中回應本文將包含數據資源的內容。
如果找不到具有傳入udid
的數據資源,則會傳回 HTTP 400 Bad Request
錯誤回應。
以下是先前使用上傳 API 上傳之 GeoJSON
簡單地理柵欄的範例回應本文:
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
GET https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=1.0
GET https://{geography}.atlas.microsoft.com/mapData/{udid}?subscription-key={subscription-key}&api-version=1.0
URI 參數
名稱 | 位於 | 必要 | 類型 | Description |
---|---|---|---|---|
geography
|
path | True |
string |
此參數會指定 Azure 地圖服務 Creator 資源所在的位置。 有效值為us和 eu。 |
udid
|
path | True |
string |
內容的唯一數據識別碼。 |
api-version
|
query | True |
string |
Azure 地圖服務 API 的版本號碼。 目前版本為 1.0 |
subscription-key
|
query |
string |
Azure 地圖帳戶提供的其中一個 Azure 地圖服務金鑰。 如需如何管理驗證的詳細資訊,請參閱 本文 。 |
要求標頭
名稱 | 必要 | 類型 | Description |
---|---|---|---|
x-ms-client-id |
string |
指定哪一個帳戶用於搭配 Microsoft Entra ID 安全性模型使用。 它代表 Azure 地圖服務 帳戶的唯一標識符,可以從 Azure 地圖服務 管理平面帳戶 API 擷取。 若要在 Azure 地圖服務 中使用 Microsoft Entra ID 安全性,請參閱下列文章以取得指引。 |
回應
名稱 | 類型 | Description |
---|---|---|
200 OK |
object |
數據下載要求已成功完成。 回應本文將包含傳入 Headers Content-Type: string |
400 Bad Request |
不正確的要求:一或多個參數未正確指定或互斥。 |
|
401 Unauthorized |
因為訂用帳戶金鑰無效或 Microsoft Entra ID 持有人令牌而拒絕存取。 請務必為作用中的 Azure 訂用帳戶和地圖服務資源提供有效的密鑰。 否則,請確認 WWW-Authenticate 標頭中的錯誤碼和所提供 Microsoft Entra ID 持有人令牌的描述。 Headers WWW-Authenticate: string |
|
403 Forbidden |
許可權、容量或驗證問題。 |
|
404 Not Found |
找不到:找不到要求的資源,但未來可能會再次提供。 |
|
500 Internal Server Error |
處理這個要求時發生錯誤。 請稍後再試一次。 |
安全性
AADToken
這些是 Microsoft Entra OAuth 2.0 流程。 與 Azure 角色型存取控制配對時,可用來控制對 REST API 的存取 Azure 地圖服務。 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 的使用方式允許針對多個使用案例設定應用程式。
- 如需 Microsoft 身分識別平台 的詳細資訊,請參閱 Microsoft 身分識別平台 概觀。
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
名稱 | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
這是當您在 Azure 入口網站 或使用 PowerShell、CLI、Azure SDK 或 REST API 中建立 Azure 地圖服務 帳戶時所佈建的共享密鑰。
使用此金鑰時,任何應用程式都可以存取所有 REST API。 換句話說,此金鑰可作為發行帳戶中的主要金鑰。
對於公開的應用程式,我們建議使用機密用戶端應用程式方法來存取 Azure 地圖服務 REST API,以便安全地儲存密鑰。
Type:
apiKey
In:
query
SAS Token
這是透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 Azure 地圖服務 資源上的列出 SAS 作業建立共用存取簽章令牌。
使用此令牌時,任何應用程式都有權使用 Azure 角色型訪問控制進行存取,並精細控制到期、速率和區域 (特定令牌的使用) 。 換句話說,SAS 令牌可用來允許應用程式以比共用密鑰更安全的方式控制存取。
對於公開的應用程式,我們建議在 地圖帳戶資源 上設定允許的來源特定清單,以限制轉譯濫用,並定期更新 SAS 令牌。
Type:
apiKey
In:
header
範例
Download previously uploaded GeoJSON data containing geometries that represent a collection of geofences
Sample Request
GET https://us.atlas.microsoft.com/mapData/25084fb7-307a-4720-8f91-7952a0b91012?subscription-key=[subscription-key]&api-version=1.0
Sample Response
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.126986,
47.639754
]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}
]
}
{
"error": {
"code": "400 BadRequest",
"message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
}
}
{
"error": {
"code": "401 Unauthorized",
"message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription."
}
}
{
"error": {
"code": "403 Forbidden",
"message": "Permission, capacity, or authentication issues."
}
}
{
"error": {
"code": "404 NotFound",
"message": "Not Found: the requested resource could not be found, but it may be available again in the future."
}
}
{
"error": {
"code": "500 InternalServerError",
"message": "An error occurred while processing the request. Please try again later."
}
}
定義
名稱 | Description |
---|---|
OData |
當 Azure 地圖服務 API 發生錯誤時,會傳回此物件。 |
OData |
當 Azure 地圖服務 API 發生錯誤時,會傳回此回應物件。 |
ODataError
當 Azure 地圖服務 API 發生錯誤時,會傳回此物件。
名稱 | 類型 | Description |
---|---|---|
code |
string |
ODataError 程式代碼。 |
details |
當 Azure 地圖服務 API 發生錯誤時,會傳回此物件。 |
|
message |
string |
如果有,則為錯誤的人類可讀描述。 |
target |
string |
如果有的話,造成錯誤的目標。 |
ODataErrorResponse
當 Azure 地圖服務 API 發生錯誤時,會傳回此回應物件。
名稱 | 類型 | Description |
---|---|---|
error |
當 Azure 地圖服務 API 發生錯誤時,會傳回此物件。 |