Best practices voor Azure Kaarten Search Service
Azure Kaarten Search Service bevat API's die verschillende mogelijkheden bieden om ontwikkelaars te helpen bij het zoeken naar adressen, plaatsen, bedrijfsvermeldingen op naam of categorie en andere geografische informatie. Met deApi voor fuzzy zoekopdrachten kunnen gebruikers bijvoorbeeld zoeken naar een adres of nuttige plaats.
In dit artikel wordt uitgelegd hoe u goede procedures kunt toepassen wanneer u gegevens aanroept vanuit Azure Kaarten Search Service. U leert het volgende:
- Query's maken om relevante overeenkomsten te retourneren
- Zoekresultaten beperken
- Meer informatie over de verschillen tussen resultaattypen
- De adresstructuur voor zoeken/antwoorden lezen
Vereisten
- Een Azure Maps-account maken
- Een primaire sleutel voor een abonnement verkrijgen, ook wel bekend als de primaire sleutel of de abonnementssleutel.
In dit artikel wordt de Postman-app gebruikt om REST-aanroepen te maken, maar u kunt elke API-ontwikkelomgeving kiezen.
Best practices voor geocoderen van adressen
Wanneer u een volledig of gedeeltelijk adres zoekt met behulp van Azure Kaarten Search Service, leest de API trefwoorden uit uw zoekquery. Vervolgens worden de lengtegraad- en breedtegraadcoördinaten van het adres retourneert. Dit proces wordt geocoderen genoemd.
De mogelijkheid om te geocoderen in een land/regio is afhankelijk van de beschikbaarheid van weggegevens en de precisie van de geocodeerservice. Zie Dekking voor geocode Kaarten voor meer informatie over de geocodeermogelijkhedenvan Azure per land of regio.
Zoekresultaten beperken
Azure Kaarten Search-API kan u helpen zoekresultaten op de juiste manier te beperken. U beperkt de resultaten zodat u relevante gegevens voor uw gebruikers kunt weergeven.
Notitie
De zoek-API's ondersteunen meer parameters dan alleen de parameters die in dit artikel worden besproken.
Zoekresultaten met geovooroordeede gegevens
Voeg altijd zoveel mogelijk locatiedetails toe om resultaten te vinden in het relevante gebied voor uw gebruiker. Mogelijk wilt u de zoekresultaten beperken door een aantal invoertypen op te geven:
Stel de
countrySetparameter in. U kunt deze bijvoorbeeld instellenUS,FRop . Standaard doorzoekt de API de hele wereld, zodat deze onnodige resultaten kan retourneren. Als uw query geencountrySetparameter heeft, kan de zoekopdracht onnauwkeurige resultaten retourneren. Een zoekopdracht naar een stad met de naam Bellevue retourneert bijvoorbeeld resultaten van de Verenigde Staten en Frankrijk, omdat beide landen/regio's een stad met de naam Bellevue bevatten.U kunt de
btmRightparameters en gebruiken om hettopleftbegrensingsvak in te stellen. Deze parameters beperken de zoekopdracht tot een specifiek gebied op de kaart.Als u het relevantiegebied voor de resultaten wilt beïnvloeden, definieert u de
latparameters enloncoördineren. Gebruik deradiusparameter om de radius van het zoekgebied in te stellen.
Parameters voor fuzzy zoekopdrachten
U wordt aangeraden de Azure Kaarten Search Fuzzy API te gebruiken wanneer u de invoer van uw gebruikers voor een zoekquery niet weet. Invoer van de gebruiker kan bijvoorbeeld een adres zijn of het type nuttige plaats (POI), zoals winkelwinkel. De API combineert nuttige plaatsen zoeken en geocoderen in een canonieke zoekopdracht met één regel:
De
minFuzzyLevelparameters en helpen relevante overeenkomsten te retourneren, zelfs wanneer queryparameters niet exact overeenkomen met de informatiemaxFuzzyLeveldie de gebruiker wil. Als u de prestaties wilt maximaliseren en ongebruikelijke resultaten wilt verminderen, stelt u zoekquery's in op de standaardwaardenminFuzzyLevel=1van enmaxFuzzyLevel=2.Als de parameter bijvoorbeeld is ingesteld op 2, wordt de zoekterm
maxFuzzyLevelrestrant gematcht met restaurant. U kunt de standaard fuzzy niveaus zo nodig overschrijven.Gebruik de
idxSetparameter om de exacte set resultaattypen te prioriteren. Als u een exacte set resultaten wilt prioriteren, kunt u een door komma's gescheiden lijst met indexen indienen. In uw lijst maakt de volgorde van het item niet uit. Azure Kaarten ondersteunt de volgende indexen:Addr- Adresbereiken: adrespunten die worden geïnterpoleerd vanaf het begin en einde van de straat. Deze punten worden weergegeven als adresbereiken.Geo- Geografische gebieden: Administratieve deling van land. Een geografie kan bijvoorbeeld een land/regio, staat of plaats zijn.PAD- Puntadressen: adressen die een straatnaam en nummer bevatten. Puntadressen kunnen worden gevonden in een index. Een voorbeeld is So blijkt Dr 2501. Een puntadres biedt het hoogste nauwkeurigheidsniveau dat beschikbaar is voor adressen.POI- Interessante punten: punten op een kaart die worden beschouwd als de aandacht waard of die mogelijk interessant zijn. De API voor zoekadressen retournt geen POIs.Str- Straten: straten op de kaart.XStr- Kruisstraten of snijpunten: knooppunten of plaatsen waar twee straten elkaar kruisen.
Gebruiksvoorbeelden
idxSet=POI- Alleen zoek-POIs.idxSet=PAD,Addr- Alleen adressen zoeken.PADgeeft het puntadres aan enAddrgeeft het adresbereik aan.
Reverse-geocode en filter voor een entiteitstype geografie
Wanneer u een reverse-geocode-zoekopdracht in de Omgekeerde APIvoor zoekadressen gebruikt, kan de service veelhoeken voor beheergebieden retourneren. U kunt bijvoorbeeld het veelhoekgebied voor een stad ophalen. Als u de zoekopdracht wilt beperken tot specifieke entiteitstypen voor geografische gebieden, moet u entityType de parameter opnemen in uw aanvragen.
Het resulterende antwoord bevat de geografie-id en het overeenkomende entiteitstype. Als u meer dan één entiteit op verstrekt, retourneert het eindpunt de kleinste entiteit die beschikbaar is. U kunt de geretourneerde geometrie-id gebruiken om de geometrie van de geografie op te halen via de service Search Polygon.
Voorbeeldaanvraag
https://atlas.microsoft.com/search/address/reverse/json?api-version=1.0&subscription-key={Your-Azure-Maps-Primary-Subscription-key}&query=47.6394532,-122.1304551&language=en-US&entityType=Municipality
Antwoord
{
"summary": {
"queryTime": 14,
"numResults": 1
},
"addresses": [
{
"address": {
"routeNumbers": [],
"countryCode": "US",
"countrySubdivision": "WA",
"countrySecondarySubdivision": "King",
"countryTertiarySubdivision": "Seattle East",
"municipality": "Redmond",
"country": "United States",
"countryCodeISO3": "USA",
"countrySubdivisionName": "Washington"
},
"position": "47.639454,-122.130455",
"dataSources": {
"geometry": {
"id": "00005557-4100-3c00-0000-0000596ae571"
}
},
"entityType": "Municipality"
}
]
}
De taal van de resultaten instellen
Gebruik de language parameter om de taal voor de geretourneerde zoekresultaten in te stellen. Als met de aanvraag de taal niet wordt ingesteld, gebruikt Search Service standaard de meest voorkomende taal in het land of de regio. Wanneer er geen gegevens beschikbaar zijn in de opgegeven taal, wordt de standaardtaal gebruikt.
Zie Azure Kaarten ondersteunde talen voor meer informatie.
De voorspellende modus gebruiken (automatische suggesties)
Als u meer overeenkomsten voor gedeeltelijke query's wilt vinden, stelt u de typeahead parameter in op true . Deze query wordt geïnterpreteerd als gedeeltelijke invoer en de zoekopdracht wordt in de voorspellende modus uitgevoerd. Als u de parameter niet in stelt op , gaat de service ervan uit dat alle relevante informatie typeahead true is doorgegeven.
In de volgende voorbeeldquery wordt de service Zoekadres opgevraagd voor Microso. Hier wordt de typeahead parameter ingesteld op true . In het antwoord ziet u dat de zoekservice de query heeft geïnterpreteerd als een gedeeltelijke query. Het antwoord bevat resultaten voor een automatisch voorgestelde query.
Voorbeeldquery
https://atlas.microsoft.com/search/address/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&typeahead=true&countrySet=US&lat=47.6370891183&lon=-122.123736172&query=Microsoft
Antwoord
{
"summary": {
"query": "microsoft",
"queryType": "NON_NEAR",
"queryTime": 18,
"numResults": 7,
"offset": 0,
"totalResults": 7,
"fuzzyLevel": 1,
"geoBias": {
"lat": 47.6370891183,
"lon": -122.123736172
}
},
"results": [
{
"type": "Street",
"id": "US/STR/p0/9438784",
"score": 2.594099998474121,
"dist": 314.0590106663596,
"address": {
"streetName": "Microsoft Way",
"municipalitySubdivision": "Redmond",
"municipality": "Redmond",
},
"position": {
"lat": 47.63988,
"lon": -122.12438
},
"viewport": {
"topLeftPoint": {
"lat": 47.64223,
"lon": -122.1256,
"valid": true
},
"btmRightPoint": {
"lat": 47.63748,
"lon": -122.12309,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/1756074",
"score": 2.592679977416992,
"dist": 876.0272035824189,
"address": {
"streetName": "Microsoft Road",
"municipalitySubdivision": "Redmond",
"municipality": "Redmond",
"countrySecondarySubdivision": "King",
"countryTertiarySubdivision": "Seattle East",
"countrySubdivision": "WA",
"countrySubdivisionName": "Washington",
"postalCode": "98052",
"countryCode": "US",
"country": "United States",
"countryCodeISO3": "USA",
"freeformAddress": "Microsoft Road, Redmond, WA 98052"
},
"position": {
"lat": 47.64032,
"lon": -122.1344
},
"viewport": {
"topLeftPoint": {
"lat": 47.64253,
"lon": -122.13535,
"valid": true
},
"btmRightPoint": {
"lat": 47.63816,
"lon": -122.13305,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/1470668",
"score": 2.5290400981903076,
"dist": 2735.4883918101486,
"address": {
"streetName": "Microsoft West Campus Road",
"municipalitySubdivision": "Redmond",
"municipality": "Bellevue",
"countrySecondarySubdivision": "King",
"countryTertiarySubdivision": "Seattle East",
"countrySubdivision": "WA",
"countrySubdivisionName": "Washington",
"postalCode": "98007",
"countryCode": "US",
"country": "United States",
"countryCodeISO3": "USA",
"freeformAddress": "Microsoft West Campus Road, Bellevue, WA 98007"
},
"position": {
"lat": 47.65784,
"lon": -122.14335
},
"viewport": {
"topLeftPoint": {
"lat": 47.65785,
"lon": -122.14335,
"valid": true
},
"btmRightPoint": {
"lat": 47.65784,
"lon": -122.14325,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/12812615",
"score": 2.527509927749634,
"dist": 2870.9579016916873,
"address": {
"streetName": "Microsoft West Campus Road",
"municipalitySubdivision": "Redmond",
"municipality": "Redmond",
"countrySecondarySubdivision": "King",
"countryTertiarySubdivision": "Seattle East",
"countrySubdivision": "WA",
"countrySubdivisionName": "Washington",
"postalCode": "98052",
"countryCode": "US",
"country": "United States",
"countryCodeISO3": "USA",
"freeformAddress": "Microsoft West Campus Road, Redmond, WA 98052"
},
"position": {
"lat": 47.66034,
"lon": -122.1404
},
"viewport": {
"topLeftPoint": {
"lat": 47.66039,
"lon": -122.14325,
"valid": true
},
"btmRightPoint": {
"lat": 47.65778,
"lon": -122.13749,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/197588",
"score": 2.4630401134490967,
"dist": 878.1404663812472,
"address": {
"streetName": "157th Avenue Northeast",
"municipalitySubdivision": "Redmond",
"municipality": "Redmond",
"countrySecondarySubdivision": "King",
"countryTertiarySubdivision": "Seattle East",
"countrySubdivision": "WA",
"countrySubdivisionName": "Washington",
"postalCode": "98052",
"extendedPostalCode": "980525344, 980525398, 980525399",
"countryCode": "US",
"country": "United States",
"countryCodeISO3": "USA",
"freeformAddress": "157th Avenue Northeast, Redmond, WA 98052"
},
"position": {
"lat": 47.64351,
"lon": -122.13056
},
"viewport": {
"topLeftPoint": {
"lat": 47.64473,
"lon": -122.13058,
"valid": true
},
"btmRightPoint": {
"lat": 47.6425,
"lon": -122.13016,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/3033991",
"score": 2.0754499435424805,
"dist": 3655467.8844475765,
"address": {
"streetName": "Microsoft Way",
"municipalitySubdivision": "Yorkmount, Charlotte",
},
"position": {
"lat": 35.14267,
"lon": -80.91824
},
"viewport": {
"topLeftPoint": {
"lat": 35.14287,
"lon": -80.91839,
"valid": true
},
"btmRightPoint": {
"lat": 35.14267,
"lon": -80.91814,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/8395877",
"score": 2.0754499435424805,
"dist": 3655437.0037482483,
"address": {
"streetName": "Microsoft Way",
"municipalitySubdivision": "Charlotte",
"municipality": "Charlotte",
"countrySecondarySubdivision": "Mecklenburg",
"countryTertiarySubdivision": "Township 1 Charlotte",
"countrySubdivision": "NC",
"countrySubdivisionName": "North Carolina",
"postalCode": "28273",
"extendedPostalCode": "282738105, 282738106, 282738108, 2827382, 282738200",
"countryCode": "US",
"country": "United States",
"countryCodeISO3": "USA",
"freeformAddress": "Microsoft Way, Charlotte, NC 28273"
},
"position": {
"lat": 35.14134,
"lon": -80.9198
},
"viewport": {
"topLeftPoint": {
"lat": 35.14274,
"lon": -80.92159,
"valid": true
},
"btmRightPoint": {
"lat": 35.14002,
"lon": -80.91824,
"valid": true
}
}
}
]
}
Een URI coderen voor het afhandelen van speciale tekens
Als u cross street addresses wilt vinden, moet u de URI coderen voor het afhandelen van speciale tekens in het adres. Kijk eens naar dit adresvoorbeeld: 1st Avenue & Union Street, Seattle. Codeer hier het en-teken ( & ) voordat u de aanvraag verzendt.
U wordt aangeraden tekengegevens in een URI te coderen. In een URI codeert u alle tekens met behulp van een procentteken ( ) en een hexadecimale waarde van twee tekens die overeenkomt met de % UTF-8-code van het teken.
Gebruiksvoorbeelden
Begin met dit adres:
query=1st Avenue & E 111th St, New York
Het adres coderen:
query=1st%20Avenue%20%26%20E%20111th%20St%2C%20New%20York
U kunt de volgende methoden gebruiken.
JavaScript of TypeScript:
encodeURIComponent(query)
C# of Visual Basic:
Uri.EscapeDataString(query)
Java:
URLEncoder.encode(query, "UTF-8")
Python:
import urllib.parse
urllib.parse.quote(query)
C++:
#include <curl/curl.h>
curl_easy_escape(query)
PHP:
urlencode(query)
Ruby:
CGI::escape(query)
Swift:
query.stringByAddingPercentEncodingWithAllowedCharacters(.URLHostAllowedCharacterSet())
Gaan:
import ("net/url")
url.QueryEscape(query)
Best practices voor nuttige plaatsen zoeken
In een POI-zoekopdracht kunt u POI-resultaten op naam aanvragen. U kunt bijvoorbeeld op naam naar een bedrijf zoeken.
We raden u ten zeerste aan de countrySet parameter te gebruiken om landen/regio's op te geven waar uw toepassing dekking nodig heeft. Het standaardgedrag is om de hele wereld te doorzoeken. Deze brede zoekopdracht kan onnodige resultaten retourneren en de zoekopdracht kan lang duren.
Merkzoekactie
Om de relevantie van de resultaten en de informatie in het antwoord te verbeteren, bevat een POI-zoekreactie merkinformatie. U kunt deze informatie gebruiken om het antwoord verder te parseren.
In een aanvraag kunt u een door komma's gescheiden lijst met merknamen indienen. Gebruik de lijst om de resultaten te beperken tot specifieke merken door de parameter in te brandSet stellen. In uw lijst maakt de volgorde van items niet uit. Wanneer u meerdere merklijsten oplevert, moeten de geretourneerde resultaten deel uitmaken van ten minste één van uw lijsten.
We gaan een aanvraag voor het zoeken naar poi-categorieën maken om merkzoek zoekopdrachten te verkennen. In het volgende voorbeeld zoeken we naar tankstations in de buurt van de Microsoft-campus in Redmond, Washington. Het antwoord toont merkinformatie voor elke nuttige plaats die is geretourneerd.
Voorbeeldquery
https://atlas.microsoft.com/search/poi/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&query=gas%20station&limit=3&lat=47.6413362&lon=-122.1327968
Antwoord
{
"summary": {
"query": "gas station",
"queryType": "NON_NEAR",
"queryTime": 276,
"numResults": 3,
"offset": 0,
"totalResults": 762680,
"fuzzyLevel": 1,
"geoBias": {
"lat": 47.6413362,
"lon": -122.1327968
}
},
"results": [
{
"type": "POI",
"id": "US/POI/p0/8831765",
"score": 5.6631999015808105,
"dist": 1037.0280221303253,
"info": "search:ta:840531000004190-US",
"poi": {
"name": "Chevron",
"phone": "+(1)-(425)-6532200",
"brands": [
{
"name": "Chevron"
}
],
"categorySet": [
{
"id": 7311
}
],
"url": "www.chevron.com",
"categories": [
"petrol station"
],
"classifications": [
{
"code": "PETROL_STATION",
"names": [
{
"nameLocale": "en-US",
"name": "petrol station"
}
]
}
]
},
"address": {
"streetNumber": "2444",
"streetName": "Bel Red Rd",
"municipalitySubdivision": "Northeast Bellevue, Bellevue",
},
"position": {
"lat": 47.63201,
"lon": -122.13281
},
"viewport": {
"topLeftPoint": {
"lat": 47.63291,
"lon": -122.13414,
"valid": true
},
"btmRightPoint": {
"lat": 47.63111,
"lon": -122.13148,
"valid": true
}
},
"entryPoints": [
{
"type": "main",
"position": {
"lat": 47.63222,
"lon": -122.13312,
"valid": true
}
}
]
},
{
"type": "POI",
"id": "US/POI/p0/8831752",
"score": 5.662710189819336,
"dist": 1330.1278248163273,
"info": "search:ta:840539001100326-US",
"poi": {
"name": "76",
"phone": "+(1)-(425)-7472126",
"brands": [
{
"name": "76"
}
],
"categorySet": [
{
"id": 7311
}
],
"url": "www.76.com",
"categories": [
"petrol station"
],
"classifications": [
{
"code": "PETROL_STATION",
"names": [
{
"nameLocale": "en-US",
"name": "petrol station"
}
]
}
]
},
"address": {
"streetNumber": "2421",
"streetName": "148Th Ave Ne",
"municipalitySubdivision": "Redmond, Bridle Trails, Bellevue",
"municipality": "Redmond, Bellevue",
"countrySecondarySubdivision": "King",
"countryTertiarySubdivision": "Seattle East",
"countrySubdivision": "WA",
"countrySubdivisionName": "Washington",
"postalCode": "98007",
"countryCode": "US",
"country": "United States",
"countryCodeISO3": "USA",
"freeformAddress": "2421 148Th Ave Ne, Bellevue, WA 98007",
"localName": "Bellevue"
},
"position": {
"lat": 47.63187,
"lon": -122.14365
},
"viewport": {
"topLeftPoint": {
"lat": 47.63277,
"lon": -122.14498,
"valid": true
},
"btmRightPoint": {
"lat": 47.63097,
"lon": -122.14232,
"valid": true
}
},
"entryPoints": [
{
"type": "minor",
"position": {
"lat": 47.63187,
"lon": -122.14374,
"valid": true
}
},
{
"type": "main",
"position": {
"lat": 47.63186,
"lon": -122.14313,
"valid": true
}
}
]
},
{
"type": "POI",
"id": "US/POI/p0/8831764",
"score": 5.662449836730957,
"dist": 1458.645407416307,
"info": "search:ta:840539000488527-US",
"poi": {
"name": "BROWN BEAR CAR WASH",
"phone": "+(1)-(425)-6442868",
"brands": [
{
"name": "Texaco"
}
],
"categorySet": [
{
"id": 7311
}
],
"url": "www.texaco.com/",
"categories": [
"petrol station"
],
"classifications": [
{
"code": "PETROL_STATION",
"names": [
{
"nameLocale": "en-US",
"name": "petrol station"
}
]
}
]
},
"address": {
"streetNumber": "15248",
"streetName": "Bel Red Rd",
"municipalitySubdivision": "Redmond",
},
"position": {
"lat": 47.62843,
"lon": -122.13628
},
"viewport": {
"topLeftPoint": {
"lat": 47.62933,
"lon": -122.13761,
"valid": true
},
"btmRightPoint": {
"lat": 47.62753,
"lon": -122.13495,
"valid": true
}
},
"entryPoints": [
{
"type": "main",
"position": {
"lat": 47.62827,
"lon": -122.13628,
"valid": true
}
}
]
}
]
}
Luchthavenzoekactie
Met behulp van de Search POI API kunt u naar luchthavens zoeken met behulp van hun officiële code. U kunt bijvoorbeeld SEA gebruiken om de Seattle-Tacoma International Airport:
https://atlas.microsoft.com/search/poi/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&query=SEA
In de buurt zoeken
Als u POI-resultaten voor een specifieke locatie wilt ophalen, kunt u proberen de API in de buurt zoeken te gebruiken. Het eindpunt retourneert alleen POI-resultaten. Er wordt geen zoekqueryparameter gebruikt.
Als u de resultaten wilt beperken, raden we u aan de radius in te stellen.
Inzicht in de antwoorden
Laten we een adres in Seattle zoeken door een aanvraag voor zoeken naar adressen te doen bij de Azure Kaarten Search Service. In de volgende aanvraag-URL stellen we de countrySet parameter in op om te zoeken naar het adres in de Verenigde US Staten.
Voorbeeldquery
https://atlas.microsoft.com/search/address/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1&query=400%20Broad%20Street%2C%20Seattle%2C%20WA&countrySet=US
Ondersteunde typen resultaten
Puntadres: punten op een kaart met een specifiek adres met een straatnaam en nummer. Puntadres biedt het hoogste nauwkeurigheidsniveau voor adressen.
Adresbereik: het bereik van adrespunten dat wordt geïnterpoleerd vanaf het begin en einde van de straat.
Geografie: gebieden op een kaart die administratieve afdelingen van een land vertegenwoordigen, bijvoorbeeld land/regio, staat of stad.
POI: Punten op een kaart die de aandacht waard zijn en die mogelijk interessant zijn.
Straat: straten op de kaart. Adressen worden omgeslagen in de breedtegraad- en lengtegraadcoördinaten van de straat die het adres bevat. Het huisnummer wordt mogelijk niet verwerkt.
Kruisweg: snijpunten. Doorkruisingsstraten vertegenwoordigen knooppunten waar twee straten elkaar kruisen.
Antwoord
Laten we eens kijken naar de antwoordstructuur. In het antwoord dat volgt, zijn de typen resultaatobjecten verschillend. Als u zorgvuldig kijkt, ziet u drie typen resultaatobjecten:
- Puntadres
- Straat
- Cross Street
U ziet dat de adreszoekactie geen POIs retournt.
De Score parameter voor elk antwoordobject geeft aan hoe de overeenkomende score zich verhoudt tot de scores van andere objecten in hetzelfde antwoord. Zie Get Search Address (Zoekadres op halen) voor meer informatie over antwoordobjectparameters.
{
"summary": {
"query": "400 broad street seattle wa",
"queryType": "NON_NEAR",
"queryTime": 146,
"numResults": 6,
"offset": 0,
"totalResults": 7,
"fuzzyLevel": 1
},
"results": [
{
"type": "Point Address",
"id": "US/PAD/p0/28725082",
"score": 9.893799781799316,
"address": {
"streetNumber": "400",
"streetName": "Broad Street",
},
"position": {
"lat": 47.62039,
"lon": -122.34928
},
"viewport": {
"topLeftPoint": {
"lat": 47.62129,
"lon": -122.35061,
"valid": true
},
"btmRightPoint": {
"lat": 47.61949,
"lon": -122.34795,
"valid": true
}
},
"entryPoints": [
{
"type": "main",
"position": {
"lat": 47.61982,
"lon": -122.34886,
"valid": true
}
}
]
},
{
"type": "Street",
"id": "US/STR/p0/6700384",
"score": 8.129190444946289,
"address": {
"streetName": "Broad Street",
},
"position": {
"lat": 47.61724,
"lon": -122.35207
},
"viewport": {
"topLeftPoint": {
"lat": 47.61825,
"lon": -122.35336,
"valid": true
},
"btmRightPoint": {
"lat": 47.61626,
"lon": -122.35078,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/9701953",
"score": 8.129190444946289,
"address": {
"streetName": "Broad Street",
},
"position": {
"lat": 47.61965,
"lon": -122.349
},
"viewport": {
"topLeftPoint": {
"lat": 47.62066,
"lon": -122.35041,
"valid": true
},
"btmRightPoint": {
"lat": 47.61857,
"lon": -122.34761,
"valid": true
}
}
},
{
"type": "Street",
"id": "US/STR/p0/11721297",
"score": 8.129190444946289,
"address": {
"streetName": "Broad Street",
"municipalitySubdivision": "Seattle, Downtown Seattle, Denny Regrade, Belltown",
"municipality": "Seattle",
"countrySecondarySubdivision": "King",
"countryTertiarySubdivision": "Seattle",
"countrySubdivision": "WA",
"countrySubdivisionName": "Washington",
"postalCode": "98121",
"extendedPostalCode": "981211237",
"countryCode": "US",
"country": "United States",
"countryCodeISO3": "USA",
"freeformAddress": "Broad Street, Seattle, WA 98121"
},
"position": {
"lat": 47.61825,
"lon": -122.35078
},
"viewport": {
"topLeftPoint": {
"lat": 47.61857,
"lon": -122.35078,
"valid": true
},
"btmRightPoint": {
"lat": 47.61825,
"lon": -122.35041,
"valid": true
}
}
},
{
"type": "Cross Street",
"id": "US/XSTR/p1/232144",
"score": 6.754479885101318,
"address": {
"streetName": "Broad Street & Valley Street",
"municipalitySubdivision": "South Lake Union, Seattle",
},
"position": {
"lat": 47.62545,
"lon": -122.33974
},
"viewport": {
"topLeftPoint": {
"lat": 47.62635,
"lon": -122.34107,
"valid": true
},
"btmRightPoint": {
"lat": 47.62455,
"lon": -122.33841,
"valid": true
}
}
}
]
}
Geometrie
Een antwoordtype geometrie kan de geometrie-id bevatten die wordt geretourneerd in het dataSources object onder en geometry id . U kunt bijvoorbeeld de service Search Polygon gebruiken om de geometriegegevens in een GeoJSON-indeling op te vragen. Door deze indeling te gebruiken, kunt u een stad- of luchthavenoverzicht voor een set entiteiten krijgen. U kunt deze grensgegevens vervolgens gebruiken om een geofence of zoek-POIsin de geometrie in te stellen.
Antwoorden voor de ZOEKadres-API of de Fuzzy API zoeken kunnen de geometrie-id bevatten die wordt geretourneerd in het dataSources object onder en geometry id :
"dataSources": {
"geometry": {
"id": "00005557-4100-3c00-0000-000059690938" // The geometry ID is returned in the dataSources object under "geometry" and "id".
}
}
Volgende stappen
Zie voor meer informatie: