Udostępnij za pośrednictwem


Wykonywanie zapytań dotyczących zestawów danych przy użyciu usługi funkcji sieci Web

W tym artykule opisano sposób wykonywania zapytań dotyczących zestawów danych usługi Azure Mapy Creator przy użyciu usługi WFS (Web Feature Service). Interfejs API systemu plików WFS umożliwia wykonywanie zapytań dotyczących wszystkich kolekcji funkcji lub określonej kolekcji w zestawie danych. Na przykład można użyć systemu WFS, aby znaleźć wszystkie sale konferencyjne o średniej wielkości w określonym budynku i piętrze.

Wymagania wstępne

W tym artykule użyto tej samej przykładowej mapy wewnętrznej, która była używana w samouczku: tworzenie map w pomieszczeniach za pomocą twórcy.

Ważne

  • W tym artykule jest używany us.atlas.microsoft.com adres URL geograficzny. Jeśli usługa Creator nie została utworzona w Stany Zjednoczone, musisz użyć innego adresu URL geograficznego. Aby uzyskać więcej informacji, zobacz Access to Creator Services (Dostęp do usług dla twórców).
  • W przykładach adresów URL w tym artykule należy zastąpić następujące elementy:
    • {Azure-Maps-Subscription-key}przy użyciu klucza subskrypcji usługi Azure Mapy.
    • {datasetId}za pomocą instrukcji datasetId uzyskanych w sekcji Sprawdzanie stanu tworzenia zestawu danych w samouczku Używanie twórcy do tworzenia map wnętrz.

Wykonywanie zapytań dotyczących kolekcji funkcji

Aby wysłać zapytanie do wszystkich kolekcji w zestawie danych, utwórz nowe żądanie HTTP GET:

Wprowadź następujący adres URL do interfejsu API systemu plików WFS. Żądanie powinno wyglądać podobnie do następującego adresu URL:

https://us.atlas.microsoft.com/wfs/datasets/{datasetId}/collections?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=2.0

Treść odpowiedzi jest zwracana w formacie GeoJSON i zawiera wszystkie kolekcje w zestawie danych. Dla uproszczenia w tym przykładzie pokazano unit tylko kolekcję. Aby zapoznać się z przykładem zawierającym wszystkie kolekcje, zobacz WFS Describe Collections API (Interfejs API opisywania kolekcji WFS). Aby dowiedzieć się więcej o dowolnej kolekcji, możesz wybrać dowolny z adresów URL wewnątrz links elementu.

{
"collections": [
    {
        "name": "unit",
        "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the is_open_area attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If is_open_area attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a line_element or area_element with is_obstruction equal to true.",
        "links": [
            {
                "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/definition?api-version=1.0",
                "rel": "describedBy",
                "title": "Metadata catalogue for unit"
            },
            {
                "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/items?api-version=1.0",
                "rel": "data",
                "title": "unit"
            }
            {
                "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit?api-version=1.0",
                "rel": "self",
                "title": "Metadata catalogue for unit"
            }
        ]
    },

Wykonywanie zapytań dotyczących kolekcji funkcji jednostki

W tej sekcji przedstawiono wykonywanie zapytań dotyczących interfejsu unit API systemu plików WFS dla kolekcji funkcji.

Aby wysłać zapytanie do kolekcji jednostek w zestawie danych, utwórz nowe żądanie HTTP GET:

https://us.atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/items?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=2.0

Po powrocie odpowiedzi skopiuj funkcję id dla jednej z unit funkcji. W poniższym przykładzie funkcja id to "UNIT26". Użyj opcji "UNIT26" jako funkcji id podczas aktualizowania stanu funkcji.

{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": "Polygon",
                "coordinates": ["..."]
            },
            "properties": {
                "original_id": "b7410920-8cb0-490b-ab23-b489fd35aed0",
                "category_id": "CTG8",
                "is_open_area": true,
                "navigable_by": [
                    "pedestrian"
                ],
                "route_through_behavior": "allowed",
                "level_id": "LVL14",
                "occupants": [],
                "address_id": "DIR1",
                "name": "157"
            },
            "id": "UNIT26",
            "featureType": ""
        }, {"..."}
    ]
}

Następne kroki