Share via


Data - Upload Preview

Karşıya Yükleme isteği, çağıranın Azure Haritalar hesabına veri içeriği yüklemesine olanak tanır.
Şunlar için geçerlidir: S1 fiyatlandırma katmanı.

Veri Yükleme API'si, çağıranın veri içeriğini Azure Haritalar hizmetine yüklemesine olanak tanır. Bu API'yi, Azure Haritalar Coğrafi Sınırlama Hizmetimizde kullanmak üzere bir Geofences GeoJSON koleksiyonunu biçiminde karşıya yükleme gibi bir senaryoda kullanabilirsiniz.

Not

veri hizmetinin kullanımdan kaldırılmasını Azure Haritalar

Azure Haritalar Veri hizmeti (hem v1 hem de v2) artık kullanım dışıdır ve 16.09.24 tarihinde kullanımdan kaldırılacaktır. Hizmet kesintilerini önlemek için Veri hizmetine yapılan tüm çağrıların 16.09.24'e kadar Azure Haritalar Veri Kayıt Defteri hizmetini kullanacak şekilde güncelleştirilmesi gerekir. Daha fazla bilgi için bkz. Veri kayıt defteri oluşturma.

Karşıya Yükleme İsteği Gönder

İçeriğinizi karşıya yüklemek için bir POST istek kullanacaksınız. İstek gövdesi karşıya yüklenecek verileri içerir. Üst Content-Type bilgi, verilerin içerik türüne ayarlanır.

Örneğin, bir coğrafi GeoJSON konumlar koleksiyonunu biçiminde karşıya yüklemek için istek gövdesini coğrafi konum içeriğine ayarlayın. Sorgu parametresini dataFormatgeojson olarak ayarlayın ve üst bilgiyi aşağıdaki medya türlerinden birine ayarlayın Content-Type :

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

Burada, merkez noktası ve yarıçap kullanarak daire geometrisi olarak temsil edilen basit bir Geofence'i karşıya yüklemek için örnek bir istek gövdesi verilmiştir. Aşağıdaki örnek içindedir GeoJSON:

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

Veri Yükleme API'si uzun süre çalışan bir işlem gerçekleştirir.

Veri Yükleme Sınırları

Lütfen şu anda her Azure Haritalar hesabının bir veri depolama sınırı olduğunu unutmayın. Depolama sınırına ulaşıldıktan sonra, tüm yeni karşıya yükleme API'leri bir 409 Conflict http hata yanıtı döndürür. Eski/kullanılmayan içeriği silmek ve yeni karşıya yüklemeler için alan oluşturmak için her zaman Veri Silme API'sini kullanabilirsiniz.

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}

URI Parametreleri

Name İçinde Gerekli Tür Description
geography
path True

string

Bu parametre, Azure Haritalar Oluşturucu kaynağının nerede bulunduğunu belirtir. Geçerli değerler: biz ve AB.

api-version
query True

string

Azure Haritalar API'sinin sürüm numarası. Geçerli sürüm 1.0

dataFormat
query True

UploadDataFormat

Karşıya yüklenen içeriğin veri biçimi.

subscription-key
query

string

Azure Map Hesabından sağlanan Azure Haritalar anahtarlarından biri. Kimlik doğrulamasını yönetme hakkında ayrıntılı bilgi için lütfen bu makaleye bakın.

İstek Başlığı

Name Gerekli Tür Description
x-ms-client-id

string

Hangi hesabın Microsoft Entra ID güvenlik modeliyle birlikte kullanıma yönelik olduğunu belirtir. Azure Haritalar hesabı için benzersiz bir kimliği temsil eder ve Azure Haritalar yönetim düzlemi Hesap API'sinden alınabilir. Azure Haritalar Microsoft Entra ID güvenliğini kullanmak için kılavuz için aşağıdaki makalelere bakın.

İstek Gövdesi

Name Tür Description
UploadContent

object

Karşıya yüklenecek içerik.

Yanıtlar

Name Tür Description
200 OK

ODataErrorResponse

Veri karşıya yüklenemedi. Karşıya yüklenen içerik tüm doğrulama denetimlerini karşılamadı. Yanıt gövdesi, karşılaşılan tüm hataları içerir.

201 Created

LongRunningOperationResult

Kaynak başarıyla oluşturuldu.

Headers

Location: string

202 Accepted

Yalnızca zaman uyumsuz istek için desteklenir. İstek Kabul Edildi: İstek işlenmek üzere kabul edildi. Sonuçlara yeniden denemek veya erişmek için lütfen Konum Üst Bilgisindeki URL'yi kullanın.

Headers

Location: string

400 Bad Request

ODataErrorResponse

Hatalı istek: Bir veya daha fazla parametre yanlış belirtildi veya birbirini dışlar.

401 Unauthorized

ODataErrorResponse

Geçersiz abonelik anahtarı veya geçersiz Microsoft Entra ID taşıyıcı belirteci nedeniyle erişim reddedildi. Etkin bir Azure aboneliği ve Haritalar kaynağı için geçerli bir anahtar sağladığıdan emin olun. Aksi takdirde, sağlanan Microsoft Entra ID taşıyıcı belirtecinin hata kodu ve açıklaması için WWW-Authenticate üst bilgisini doğrulayın.

Headers

WWW-Authenticate: string

403 Forbidden

ODataErrorResponse

İzin, kapasite veya kimlik doğrulaması sorunları.

404 Not Found

ODataErrorResponse

Bulunamadı: İstenen kaynak bulunamadı, ancak gelecekte yeniden kullanılabilir olabilir.

500 Internal Server Error

ODataErrorResponse

İstek işlenirken bir hata oluştu. Lütfen daha sonra yeniden deneyin.

Güvenlik

AADToken

Bunlar Microsoft Entra OAuth 2.0 Akışlarıdır. Azure rol tabanlı erişim denetimiyle eşleştirildiğinde, Azure Haritalar REST API'lerine erişimi denetlemek için kullanılabilir. Azure rol tabanlı erişim denetimleri, bir veya daha fazla Azure Haritalar kaynak hesabına veya alt kaynağına erişimi tanımlamak için kullanılır. Herhangi bir kullanıcı, grup veya hizmet sorumlusuna yerleşik bir rol veya REST API'lerini Azure Haritalar için bir veya daha fazla izinden oluşan özel bir rol aracılığıyla erişim verilebilir.

Senaryoları uygulamak için kimlik doğrulama kavramlarını görüntülemenizi öneririz. Özetle, bu güvenlik tanımı belirli API'ler ve kapsamlar üzerinde erişim denetimi yapabilen nesneler aracılığıyla uygulamaları modellemeye yönelik bir çözüm sağlar.

Notlar

  • Bu güvenlik tanımı, uygulamanın erişim isteğinde x-ms-client-id bulunduğu Azure Haritalar kaynağı belirtmek için üst bilginin kullanılmasını gerektirir. Bu, Haritalar yönetim API'sinden edinilebilir.

Authorization URL, Azure genel bulut örneğine özgüdür. Bağımsız bulutların benzersiz Yetkilendirme URL'leri ve Microsoft Entra ID yapılandırmaları vardır. * Azure rol tabanlı erişim denetimi Azure portal, PowerShell, CLI, Azure SDK'ları veya REST API'leri aracılığıyla Azure yönetim düzleminden yapılandırılır. * Azure Haritalar Web SDK'sının kullanımı, bir uygulamanın birden çok kullanım örneği için yapılandırma tabanlı kurulumuna olanak tanır.

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

Bu, Azure portal Azure Haritalar hesabı oluşturduğunuzda veya PowerShell, CLI, Azure SDK'ları veya REST API kullandığınızda sağlanan paylaşılan bir anahtardır.

Bu anahtarla, tüm uygulamalar tüm REST API'lere erişebilir. Başka bir deyişle, bu anahtar, verildikleri hesapta ana anahtar olarak kullanılabilir.

Herkese açık uygulamalar için, anahtarınızın güvenli bir şekilde depolanabilmesi için gizli istemci uygulamaları yaklaşımını kullanarak Azure Haritalar REST API'lerine erişmenizi öneririz.

Type: apiKey
In: query

SAS Token

Bu paylaşılan erişim imzası belirteci, Azure portal, PowerShell, CLI, Azure SDK'ları veya REST API'leri aracılığıyla Azure yönetim düzlemi aracılığıyla Azure Haritalar kaynağındaki Sas Listeleme işleminden oluşturulur.

Bu belirteçle, tüm uygulamalar Azure rol tabanlı erişim denetimleri ve belirli bir belirtecin kullanım süresi, oranı ve bölgelerine yönelik ayrıntılı denetim ile erişim yetkisine sahip olur. Başka bir deyişle SAS Belirteci, uygulamaların erişimi paylaşılan anahtardan daha güvenli bir şekilde denetlemesine izin vermek için kullanılabilir.

Herkese açık uygulamalar için önerimiz, uygunsuz işlemeyi sınırlamak ve SAS Belirtecini düzenli olarak yenilemek için Harita hesabı kaynağında izin verilen kaynakların belirli bir listesini yapılandırmanızdır.

Type: apiKey
In: header

Örnekler

Upload GeoJSON data containing geometries that represent a collection of geofences

Sample Request

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
      }
    }
  ]
}

Sample Response

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."
  }
}

Tanımlar

Name Description
LongRunningOperationResult

Long-Running İşlemler API'sinin yanıt modeli.

ODataError

bu nesne, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

ODataErrorResponse

Bu yanıt nesnesi, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

type

İsteğin durum durumu.

UploadDataFormat

Karşıya yüklenen içeriğin veri biçimi.

LongRunningOperationResult

Long-Running İşlemler API'sinin yanıt modeli.

Name Tür Description
created

string

Oluşturulan zaman damgası.

error

ODataError

bu nesne, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

operationId

string

Bu uzun süre çalışan işlemin kimliği.

resourceLocation

string

Oluşturulan kaynakla ilgili ayrıntılar için konum URI'si. Bu yalnızca istek başarıyla tamamlandığında sağlanır.

status

type

İsteğin durum durumu.

warning

ODataError

bu nesne, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

ODataError

bu nesne, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

Name Tür Description
code

string

ODataError kodu.

details

ODataError[]

bu nesne, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

message

string

Varsa, hatanın insanlar tarafından okunabilen bir açıklamasıdır.

target

string

Varsa, hataya neden olan hedef.

ODataErrorResponse

Bu yanıt nesnesi, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

Name Tür Description
error

ODataError

bu nesne, Azure Haritalar API'sinde bir hata oluştuğunda döndürülür.

type

İsteğin durum durumu.

Name Tür Description
Failed

string

İstekte bir veya daha fazla hata var.

NotStarted

string

İstek henüz işlemeye başlamadı.

Running

string

İstek işlemeye başladı.

Succeeded

string

İstek başarıyla tamamlandı.

UploadDataFormat

Karşıya yüklenen içeriğin veri biçimi.

Name Tür Description
geojson

string

GeoJSON , JSON tabanlı bir jeo-uzamsal veri değişim biçimidir.

zip

string

Sıkıştırılmış veri biçimi.