Data - Upload Preview
Žádost Nahrát umožňuje volajícímu nahrát datový obsah do svého Azure Maps účtu.
Platí pro: Cenová úroveň S1.
Rozhraní API pro nahrávání dat umožňuje volajícímu nahrát datový obsah do služby Azure Maps.
Toto rozhraní API můžete použít ve scénáři, jako je nahrání kolekce geofences ve GeoJSON
formátu, pro použití v naší službě Azure Maps Geofencing Service.
Poznámka
vyřazení služby Azure Maps Data Service
Služba Azure Maps Data (v1 i v2) je teď zastaralá a 16. 9. 24. bude vyřazena. Aby nedocházelo k přerušení služeb, bude potřeba do 16. 9. do 24. 9. aktualizovat všechna volání datové služby tak, aby používala službu Azure Maps Data Registry. Další informace najdete v tématu Vytvoření registru dat.
Odeslat žádost o nahrání
K nahrání obsahu použijete POST
žádost. Text požadavku bude obsahovat data k nahrání. Hlavička Content-Type
bude nastavena na typ obsahu dat.
Pokud chcete například nahrát kolekci geografických fence ve GeoJSON
formátu, nastavte text požadavku na obsah geografické zóny.
dataFormat
Nastavte parametr dotazu na geojson a hlavičku Content-Type
nastavte na jeden z následujících typů médií:
application/json
application/vnd.geo+json
application/octet-stream
Tady je ukázkový text požadavku pro nahrání jednoduché geografické zóny reprezentované geometrií kruhu pomocí středového bodu a poloměru. Následující ukázka je v GeoJSON
souboru :
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
Rozhraní API pro nahrávání dat provádí dlouhotrvající operaci.
Limity nahrávání dat
Mějte na paměti, že v současné době má každý účet Azure Maps limit úložiště dat.
Jakmile dosáhnete limitu úložiště, všechna nová volání rozhraní API pro nahrávání vrátí chybovou 409 Conflict
odpověď HTTP.
Kdykoli můžete použít rozhraní API pro odstranění dat k odstranění starého nebo nepoužívaného obsahu a vytvoření místa pro nové nahrání.
POST https://{geography}.atlas.microsoft.com/mapData/upload?api-version=1.0&dataFormat={dataFormat}
POST https://{geography}.atlas.microsoft.com/mapData/upload?subscription-key={subscription-key}&api-version=1.0&dataFormat={dataFormat}
Parametry identifikátoru URI
Name | V | Vyžadováno | Typ | Description |
---|---|---|---|---|
geography
|
path | True |
string |
Tento parametr určuje, kde se nachází prostředek Azure Maps Creator. Platné hodnoty jsou my a eu. |
api-version
|
query | True |
string |
Číslo verze rozhraní API Azure Maps. Aktuální verze je 1.0. |
data
|
query | True |
Datový formát nahrávaného obsahu. |
|
subscription-key
|
query |
string |
Jeden z Azure Maps klíčů zadaných z mapového účtu Azure. Podrobnosti o správě ověřování najdete v tomto článku . |
Hlavička požadavku
Name | Vyžadováno | Typ | Description |
---|---|---|---|
x-ms-client-id |
string |
Určuje, který účet je určen pro použití ve spojení s modelem zabezpečení Microsoft Entra ID. Představuje jedinečné ID účtu Azure Maps a dá se načíst z rozhraní API účtu Azure Maps roviny správy. Pokud chcete použít zabezpečení Microsoft Entra ID v Azure Maps pokyny najdete v následujících článcích. |
Text požadavku
Name | Typ | Description |
---|---|---|
UploadContent |
object |
Obsah, který se má nahrát. |
Odpovědi
Name | Typ | Description |
---|---|---|
200 OK |
Nahrávání dat se nezdařilo. Nahraný obsah nevyhovoval všem ověřovacím kontrolám. Text odpovědi obsahuje všechny chyby, ke kterým došlo. |
|
201 Created |
Prostředek se úspěšně vytvořil. Hlavičky Location: string |
|
202 Accepted |
Podporováno pouze pro asynchronní požadavek. Žádost byla přijata: Žádost byla přijata ke zpracování. K opakování nebo přístupu k výsledkům použijte adresu URL v záhlaví umístění. Hlavičky Location: string |
|
400 Bad Request |
Chybný požadavek: Jeden nebo více parametrů bylo zadáno nesprávně nebo se vzájemně vylučují. |
|
401 Unauthorized |
Přístup byl odepřen kvůli neplatnému klíči předplatného nebo neplatnému Microsoft Entra ID nosný token. Nezapomeňte zadat platný klíč pro aktivní předplatné Azure a prostředek Maps. V opačném případě ověřte kód chyby a popis zadaného Microsoft Entra ID nosného tokenu v hlavičce WWW-Authenticate. Hlavičky WWW-Authenticate: string |
|
403 Forbidden |
Problémy s oprávněním, kapacitou nebo ověřováním |
|
404 Not Found |
Nenalezený: Požadovaný prostředek se nepodařilo najít, ale v budoucnu může být znovu dostupný. |
|
500 Internal Server Error |
Při zpracování požadavku došlo k chybě. Zkuste to později. |
Zabezpečení
AADToken
Toto jsou Microsoft Entra toky OAuth 2.0. Při spárování s řízením přístupu na základě role v Azure se dá použít k řízení přístupu k Azure Maps rozhraní REST API. Řízení přístupu na základě role v Azure slouží k určení přístupu k jednomu nebo několika Azure Maps účtu prostředku nebo dílčím prostředkům. Každému uživateli, skupině nebo instančnímu objektu je možné udělit přístup prostřednictvím předdefinované role nebo vlastní role, která se skládá z jednoho nebo více oprávnění k Azure Maps rozhraní REST API.
Pokud chcete implementovat scénáře, doporučujeme zobrazit si koncepty ověřování. Souhrnně řečeno, tato definice zabezpečení poskytuje řešení pro modelování aplikací prostřednictvím objektů schopných řízení přístupu k určitým rozhraním API a oborům.
Poznámky
- Tato definice zabezpečení vyžaduje použití hlavičky
x-ms-client-id
k označení Azure Maps prostředku, ke kterému aplikace žádá o přístup. To je možné získat z rozhraní API pro správu map.
Je Authorization URL
specifický pro instanci veřejného cloudu Azure. Suverénní cloudy mají jedinečné autorizační adresy URL a konfigurace Microsoft Entra ID.
* Řízení přístupu na základě role v Azure se konfiguruje z roviny správy Azure prostřednictvím Azure Portal, PowerShellu, rozhraní příkazového řádku, sad Azure SDK nebo rozhraní REST API.
* Použití sady Azure Maps Web SDK umožňuje nastavení aplikace na základě konfigurace pro více případů použití.
- Další informace o Microsoft identity platform najdete v přehledu Microsoft identity platform.
Typ:
oauth2
Tok:
implicit
URL autorizace:
https://login.microsoftonline.com/common/oauth2/authorize
Rozsahy
Name | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Jedná se o sdílený klíč, který se zřídí při vytvoření účtu Azure Maps v Azure Portal nebo pomocí PowerShellu, rozhraní příkazového řádku, sad Azure SDK nebo rozhraní REST API.
S tímto klíčem má každá aplikace přístup ke všem rozhraním REST API. Jinými slovy, tento klíč se dá použít jako hlavní klíč v účtu, ve který je vystavený.
U veřejně vystavených aplikací doporučujeme používat pro přístup k rozhraním REST API Azure Maps přístup k důvěrným klientským aplikacím, aby se váš klíč mohl bezpečně uložit.
Typ:
apiKey
V:
query
SAS Token
Jedná se o token sdíleného přístupového podpisu, který se vytvoří z operace List SAS prostředku Azure Maps prostřednictvím roviny správy Azure prostřednictvím Azure Portal, PowerShellu, rozhraní příkazového řádku, sad Azure SDK nebo rozhraní REST API.
S tímto tokenem má každá aplikace oprávnění k přístupu pomocí řízení přístupu na základě role v Azure a podrobného řízení k vypršení platnosti, četnosti a oblastem použití konkrétního tokenu. Jinými slovy, token SAS je možné použít k tomu, aby aplikace mohly řídit přístup bezpečnějším způsobem než sdílený klíč.
U veřejně vystavených aplikací doporučujeme nakonfigurovat konkrétní seznam povolených zdrojů v prostředku mapového účtu , aby se omezilo zneužití vykreslování a pravidelně obnovovali token SAS.
Typ:
apiKey
V:
header
Příklady
Upload GeoJSON data containing geometries that represent a collection of geofences
Ukázkový požadavek
POST https://us.atlas.microsoft.com/mapData/upload?subscription-key=[subscription-key]&api-version=1.0&dataFormat=geojson
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.126986,
47.639754
]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}
]
}
Ukázková odpověď
Location: https://atlas.microsoft.com/mapData/metadata/{udid}?api-version=1.0
Access-Control-Expose-Headers: Location
{
"operationId": "{operationId}",
"status": "Succeeded",
"created": "2020-01-02 1:02:03 AM +00:00",
"resourceLocation": "https://atlas.microsoft.com/mapData/metadata/{resourceId}?api-version=1.0"
}
operation-Location: https://atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0
Access-Control-Expose-Headers: Location
{
"error": {
"code": "400 Bad Request",
"message": "Upload request failed. Your data has been removed as we encountered the following problems with it: Map data is not a valid GeoJSON geometry."
}
}
{
"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."
}
}
Definice
Name | Description |
---|---|
Long |
Model odpovědí pro rozhraní API Long-Running Operations. |
OData |
Tento objekt se vrátí, když dojde k chybě v rozhraní API Azure Maps. |
OData |
Tento objekt odpovědi se vrátí, když dojde k chybě v rozhraní API Azure Maps. |
type |
Stav požadavku. |
Upload |
Datový formát nahrávaného obsahu. |
LongRunningOperationResult
Model odpovědí pro rozhraní API Long-Running Operations.
Name | Typ | Description |
---|---|---|
created |
string |
Vytvořené časové razítko. |
error |
Tento objekt se vrátí, když dojde k chybě v rozhraní API Azure Maps. |
|
operationId |
string |
ID této dlouhotrvající operace. |
resourceLocation |
string |
Identifikátor URI umístění pro podrobnosti o vytvořeném prostředku. Tato hodnota je k dispozici pouze v případě, že se žádost úspěšně dokončila. |
status |
Stav požadavku. |
|
warning |
Tento objekt se vrátí, když dojde k chybě v rozhraní API Azure Maps. |
ODataError
Tento objekt se vrátí, když dojde k chybě v rozhraní API Azure Maps.
Name | Typ | Description |
---|---|---|
code |
string |
Kód ODataError. |
details |
Tento objekt se vrátí, když dojde k chybě v rozhraní API Azure Maps. |
|
message |
string |
Pokud je k dispozici, popis chyby čitelný pro člověka. |
target |
string |
Pokud je k dispozici, cíl, který chybu způsobuje. |
ODataErrorResponse
Tento objekt odpovědi se vrátí, když dojde k chybě v rozhraní API Azure Maps.
Name | Typ | Description |
---|---|---|
error |
Tento objekt se vrátí, když dojde k chybě v rozhraní API Azure Maps. |
type
Stav požadavku.
Name | Typ | Description |
---|---|---|
Failed |
string |
Požadavek má jedno nebo více selhání. |
NotStarted |
string |
Žádost se ještě nezačala zpracovávat. |
Running |
string |
Žádost se začala zpracovávat. |
Succeeded |
string |
Žádost se úspěšně dokončila. |
UploadDataFormat
Datový formát nahrávaného obsahu.
Name | Typ | Description |
---|---|---|
geojson |
string |
GeoJSON je formát pro výměnu geoprostorových dat založený na formátu JSON. |
zip |
string |
Komprimovaný formát dat. |