Delen via


Data - Update

Gebruik deze optie om gegevensinhoud bij te werken die eerder is geüpload met Behulp van Gegevensupload.

Notitie

Buitengebruikstelling van Azure Maps-gegevensservice

De Azure Maps Data-service (zowel v1 als v2) is nu afgeschaft en wordt op 16-9-24 buiten gebruik gesteld. Om serviceonderbrekingen te voorkomen, moeten alle aanroepen naar de gegevensservice uiterlijk op 16-9-9-24 worden bijgewerkt om de Azure Maps Data Registry-service te kunnen gebruiken. Zie Gegevensregister maken voor meer informatie.

De Data Update API is een HTTP-aanvraag PUT waarmee de aanroeper eerder geüploade gegevensinhoud kan bijwerken.

U kunt deze API gebruiken in een scenario zoals het toevoegen of verwijderen van geofences aan of uit een bestaande verzameling geofences. Geofences worden geüpload met behulp van de Api voor het uploaden van gegevens , voor gebruik in de Geofencing Service van Azure Maps.

Houd er rekening mee dat de Update-API de bestaande gegevensinhoud vervangt en overschrijft .

Belangrijk

Door deze functie te gebruiken, gaat u akkoord met de juridische voorwaarden van de preview. Zie de aanvullende voorwaarden voor preview voor meer informatie.

Updateaanvraag indienen

Als u uw inhoud wilt bijwerken, gebruikt u een PUT aanvraag. De aanvraagbody bevat de nieuwe gegevens die de bestaande gegevens vervangen. De Content-Type header wordt ingesteld op het inhoudstype van de gegevens en het pad bevat de udid van de gegevens die moeten worden bijgewerkt.

Als u bijvoorbeeld een verzameling geofences wilt bijwerken die eerder zijn geüpload met behulp van de Upload-API, plaatst u de nieuwe geofence-inhoud in de aanvraagbody. Stel de udid parameter in het pad in op de udid van de gegevens die u eerder hebt ontvangen in het antwoord van de upload-API. Stel de Content-Type header in op een van de volgende mediatypen:

  • application/json
  • application/vnd.geo+json
  • application/octet-stream

Hier volgt een voorbeeld van de aanvraagtekst voor het bijwerken van een eenvoudige Geofence. Het wordt weergegeven als een cirkelgeometrie met behulp van een middelpunt en een radius. Het onderstaande voorbeeld is in GeoJSON:

{
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "geometry": {
            "type": "Point",
            "coordinates": [-122.126986, 47.639754]
        },
        "properties": {
            "geometryId": "001",
            "radius": 500
        }
    }]
}

De eerder geüploade geofence had een straal van 100 meter. De bovenstaande aanvraag wordt bijgewerkt naar 500m.

De Api voor gegevensupdates voert een langdurige bewerking uit.

Limieten voor gegevensupdates

Houd er rekening mee dat momenteel elk Azure Maps-account een limiet voor gegevensopslag heeft. Zodra de opslaglimiet is bereikt, retourneren alle nieuwe upload-API-aanroepen een 409 Conflict HTTP-foutreactie. U kunt altijd de Gegevens verwijderen-API gebruiken om oude/ongebruikte inhoud te verwijderen en ruimte te maken voor nieuwe uploads.

PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=2.0
PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=2.0&description={description}

URI-parameters

Name In Vereist Type Description
geography
path True

string

Deze parameter geeft aan waar de Azure Maps Creator-resource zich bevindt. Geldige waarden zijn wij en eu.

udid
path True

string

De unieke gegevens-id voor de inhoud. De udid moet zijn verkregen na een geslaagde aanroep voor het uploaden van gegevens .

api-version
query True

string

Versienummer van Azure Maps-API.

description
query

string

De beschrijving die moet worden gegeven aan de upload.

Aanvraagkoptekst

Name Vereist Type Description
x-ms-client-id

string

Hiermee geeft u op welk account is bedoeld voor gebruik in combinatie met het Microsoft Entra ID-beveiligingsmodel. Het vertegenwoordigt een unieke id voor het Azure Maps-account en kan worden opgehaald uit de Azure Maps-beheervlak Account-API. Als u Microsoft Entra ID-beveiliging in Azure Maps wilt gebruiken, raadpleegt u de volgende artikelen voor hulp.

Aanvraagbody

Name Type Description
UpdateContent

object

De nieuwe inhoud die de eerder geüploade inhoud bijwerkt/vervangt.

Antwoorden

Name Type Description
200 OK

LongRunningOperationResult

De bewerking wordt uitgevoerd of voltooid. Als de bewerking is geslaagd, gebruikt u de Resource-Location-header om het pad naar het resultaat op te halen.

Kopteksten

Resource-Location: string

202 Accepted

Aanvraag geaccepteerd: de aanvraag is geaccepteerd voor verwerking. Gebruik de URL in de Operation-Location-header om de status te verkrijgen.

Kopteksten

Operation-Location: string

Other Status Codes

ErrorResponse

De limiet voor gegevensopslag is bereikt voor het Azure Maps-account. U kunt altijd de Gegevens verwijderen-API gebruiken om oude/ongebruikte inhoud te verwijderen en ruimte te maken voor nieuwe uploads.

Other Status Codes

ErrorResponse

Er is een onverwachte fout opgetreden.

Beveiliging

AADToken

Dit zijn de Microsoft Entra OAuth 2.0-stromen . Wanneer het wordt gekoppeld aan op rollen gebaseerd toegangsbeheer van Azure , kan het worden gebruikt om de toegang tot Azure Maps REST API's te beheren. Op rollen gebaseerd toegangsbeheer van Azure wordt gebruikt om toegang tot een of meer Azure Maps-resourceaccounts of subresources aan te wijzen. Elke gebruiker, groep of service-principal kan toegang krijgen via een ingebouwde rol of een aangepaste rol die bestaat uit een of meer machtigingen voor Azure Maps REST API's.

Als u scenario's wilt implementeren, raden we u aan om verificatieconcepten te bekijken. Samengevat biedt deze beveiligingsdefinitie een oplossing voor het modelleren van toepassingen via objecten die toegangsbeheer kunnen hebben voor specifieke API's en bereiken.

Notities

  • Voor deze beveiligingsdefinitie moet de x-ms-client-id header worden gebruikt om aan te geven tot welke Azure Maps-resource de toepassing toegang aanvraagt. Dit kan worden verkregen via de Beheer-API van Maps .

De Authorization URL is specifiek voor het azure-exemplaar van de openbare cloud. Onafhankelijke clouds hebben unieke autorisatie-URL's en Microsoft Entra ID-configuraties. * Op rollen gebaseerd toegangsbeheer van Azure wordt geconfigureerd vanuit het Azure-beheervlak via Azure Portal, PowerShell, CLI, Azure SDK's of REST API's. * Gebruik van de Azure Maps Web SDK maakt configuratie van een toepassing mogelijk voor meerdere use cases.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Dit is een gedeelde sleutel die wordt ingericht wanneer u een Azure Maps-account maakt in Azure Portal of met behulp van PowerShell, CLI, Azure SDK's of REST API.

Met deze sleutel heeft elke toepassing toegang tot alle REST API's. Met andere woorden, deze sleutel kan worden gebruikt als een hoofdsleutel in het account waarin ze zijn uitgegeven.

Voor openbaar beschikbare toepassingen wordt aanbevolen om de benadering vertrouwelijke clienttoepassingen te gebruiken voor toegang tot Azure Maps REST API's, zodat uw sleutel veilig kan worden opgeslagen.

Type: apiKey
In: query

SAS Token

Dit is een shared access signature-token dat is gemaakt op basis van de SAS-bewerking List op de Azure Maps-resource via het Azure-beheervlak via Azure Portal, PowerShell, CLI, Azure SDK's of REST API's.

Met dit token is elke toepassing gemachtigd om toegang te krijgen met op rollen gebaseerd toegangsbeheer van Azure en fijnmazige controle over het verloop, de snelheid en de gebruiksregio(s) voor het specifieke token. Met andere woorden, het SAS-token kan worden gebruikt om toepassingen in staat te stellen toegang op een veiligere manier te beheren dan de gedeelde sleutel.

Voor openbaar beschikbaar gemaakte toepassingen wordt aanbevolen om een specifieke lijst met toegestane oorsprongen te configureren op de resource Van het account toewijzen om misbruik van het genereren te beperken en het SAS-token regelmatig te vernieuwen.

Type: apiKey
In: header

Voorbeelden

Update previously uploaded GeoJSON data containing geometries that represent a collection of geofences

Sample request

PUT https://us.atlas.microsoft.com/mapData/25084fb7-307a-4720-8f91-7952a0b91012?api-version=2.0

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          -122.126986,
          47.639754
        ]
      },
      "properties": {
        "geometryId": "001",
        "radius": 500
      }
    }
  ]
}

Sample response

Resource-Location: https://us.atlas.microsoft.com/mapData/3e36b996-f6d1-b068-0fcb-dd6b014c3447?api-version=2.0
{
  "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c",
  "created": "2021-04-20T22:43:14.9401559+00:00",
  "status": "Succeeded"
}
Operation-Location: https://us.atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0
Access-Control-Expose-Headers: Operation-Location
{
  "error": {
    "code": "409 Conflict",
    "message": "The data storage limit is reached on the Azure Maps account. You can always use the Data Delete API to delete old/unused content and create space for new uploads."
  }
}

Definities

Name Description
ErrorAdditionalInfo

Aanvullende informatie over de resourcebeheerfout.

ErrorDetail

De foutdetails.

ErrorResponse

Foutreactie

LongRunningOperationResult

Het antwoordmodel voor een Long-Running Operations-API.

LroStatus

De status van de aanvraag.

ErrorAdditionalInfo

Aanvullende informatie over de resourcebeheerfout.

Name Type Description
info

object

De aanvullende informatie.

type

string

Het type aanvullende informatie.

ErrorDetail

De foutdetails.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

De fout aanvullende informatie.

code

string

De foutcode.

details

ErrorDetail[]

De foutdetails.

message

string

Het foutbericht.

target

string

Het foutdoel.

ErrorResponse

Foutreactie

Name Type Description
error

ErrorDetail

Het foutobject.

LongRunningOperationResult

Het antwoordmodel voor een Long-Running Operations-API.

Name Type Description
created

string

De gemaakte tijdstempel.

error

ErrorDetail

De foutdetails.

operationId

string

De id voor deze langdurige bewerking.

status

LroStatus

De status van de aanvraag.

warning

ErrorDetail

De foutdetails.

LroStatus

De status van de aanvraag.

Name Type Description
Failed

string

De aanvraag heeft een of meer fouten.

NotStarted

string

De verwerking van de aanvraag is nog niet gestart.

Running

string

De verwerking van de aanvraag is gestart.

Succeeded

string

De aanvraag is voltooid.