Búsqueda de una dirección mediante el servicio de búsqueda de Azure MapsFind an address using the Azure Maps search service

El servicio de búsqueda de Maps es un conjunto de API RESTful diseñadas para que los desarrolladores busquen direcciones, lugares, puntos de interés, listados de empresas y otra información geográfica.The Maps search service is a set of RESTful APIs designed for developers to search for addresses, places, points of interest, business listings, and other geographic information. El servicio de búsqueda asigna una latitud y longitud a una dirección específica, calle transversal, característica geográfica o punto de interés (POI).The service assigns a latitude/longitude to a specific address, cross street, geographic feature, or point of interest (POI). Los valores de latitud y longitud devueltos por la búsqueda se pueden usar como parámetros en otros servicios de Maps como las rutas y el flujo de tráfico.Latitude and longitude values returned by the search can be used as parameters in other Maps services like route and traffic flow.

En este artículo, aprenderá cómo:In this article you will learn, how to:

Requisitos previosPrerequisites

Para realizar cualquier llamada a las API del servicio Azure Maps, necesita una cuenta de Maps y una clave.To make any calls to the Maps service APIs, you need a Maps account and key. Para más información sobre cómo crear una cuenta y recuperar una clave, consulte Administración de la cuenta y las claves de Azure Maps.For information on creating an account and retrieving a key, see How to manage your Azure Maps account and keys.

Este artículo utiliza la aplicación Postman para generar llamadas REST.This article uses the Postman app to build REST calls. Puede usar cualquier entorno de desarrollo de API que prefiera.You can use any API development environment that you prefer.

La API predeterminada del servicio de búsqueda es búsqueda aproximada y es útil cuando no se sabe cuáles son las entradas de usuario para una consulta de búsqueda.The default API for the search service is fuzzy search and is useful when you do not know what your user inputs are for a search query. La API combina la búsqueda de POI y geocodificación en una "búsqueda de una sola línea" canónica.The API combines POI search and geocoding into a canonical 'single-line search'. Por ejemplo, la API puede controlar las entradas de cualquier dirección o una combinación de tokens de POI.For example, the API can handle inputs of any address or POI token combination. La API también se puede ponderar con una posición contextual (par de latitud yIt can also be weighted with a contextual position (lat./lon. longitud), completamente restringida por una coordenada y un radio, o se puede ejecutar de forma más general sin ningún punto de anclaje de polarización geográfica.pair), fully constrained by a coordinate and radius, or executed more generally without any geo biasing anchor point.

La mayoría de las consultas de búsqueda tienen como valor predeterminado maxFuzzyLevel=1 para aumentar el rendimiento y reducir los resultados inusuales.Most Search queries default to maxFuzzyLevel=1 to gain performance and reduce unusual results. Este valor predeterminado puede invalidarse según requiera la solicitud mediante la transmisión del parámetro de consulta maxFuzzyLevel=2 o 3.This default can be overridden as needed per request by passing in the query parameter maxFuzzyLevel=2 or 3.

  1. Abra la aplicación Postman, haga clic en Nuevo | Crear nuevo y seleccione Solicitud GET.Open the Postman app, click New | Create New, and select GET request. Escriba un nombre de solicitud de búsqueda aproximada, seleccione una colección o carpeta donde guardarlo y haga clic en Guardar.Enter a Request name of Fuzzy search, select a collection or folder to save it to, and click Save.

  2. En la pestaña Builder, seleccione el método HTTP GET y escriba la dirección URL de solicitud para el punto de conexión de API.On the Builder tab, select the GET HTTP method and enter the request URL for your API endpoint.

    Búsqueda aproximada

    ParámetroParameter Valor sugeridoSuggested value
    HTTP methodHTTP method GETGET
    URL de la solicitudRequest URL https://atlas.microsoft.com/search/fuzzy/json?
    AutorizaciónAuthorization Sin autenticaciónNo Auth

    El atributo json de la ruta de acceso URL determina el formato de respuesta.The json attribute in the URL path determines the response format. Usa json en todo este artículo para una fácil utilización y legibilidad.You are using json throughout this article for ease of use and readability. Puede encontrar los formatos de respuesta disponibles en la definición de obtención de búsqueda aproximada de la referencia de la API funcional de Maps.You can find the available response formats in the Get Search Fuzzy definition of the Maps Functional API reference.

  3. Haga clic en Params (Parámetros) y especifique los siguientes pares clave-valor para utilizar como parámetros de consulta o ruta de acceso en la dirección URL de la solicitud:Click Params, and enter the following Key / Value pairs to use as query or path parameters in the request URL:

    Búsqueda aproximada

    ClaveKey ValorValue
    api-versionapi-version 1.01.0
    subscription-keysubscription-key <la clave de Azure Maps><your Azure Maps key>
    queryquery pizzapizza
  4. Haga clic en Enviar y revise el cuerpo de la respuesta.Click Send and review the response body.

    La cadena de consulta ambigua de "pizza" devolvió 10 resultados de punto de interés (POI) con categorías correspondientes a "pizza" y "restaurante".The ambiguous query string of "pizza" returned 10 point of interest result (POI) results with categories falling in "pizza" and "restaurant". Cada resultado devuelve una dirección, valores de latitud y longitud, ventanilla y puntos de entrada para la ubicación.Each result returns a street address, latitude / longitude values, view port, and entry points for the location.

    Los resultados son variados para esta consulta, no se asocian a ninguna ubicación de referencia determinada.The results are varied for this query, not tied to any particular reference location. Puede usar el countrySet parámetro para especificar solo los países o regiones para que la aplicación necesita cobertura, como el comportamiento predeterminado consiste en Buscar en todo el mundo, devolución de resultados innecesarios.You can use the countrySet parameter to specify only the countries/regions for which your application needs coverage, as the default behavior is to search the entire world, potentially returning unnecessary results.

  5. Agregue la siguiente clave o par clave-valor a la sección Params y haga clic en Enviar:Add the following Key / Value pair to the Params section and click Send:

    ClaveKey ValorValue
    countrySetcountrySet USUS

    Ahora los resultados están limitados por el código de país y la consulta devuelve pizzerías de los Estados Unidos.The results are now bounded by the country code and the query returns pizza restaurants in the United States.

    Para proporcionar resultados para una ubicación, puede consultar un punto de interés y usar los valores de latitud y longitud devueltos en la llamada al servicio de búsqueda aproximada.To provide results for a location, you can query a point of interest and use the returned latitude and longitude values in your call to the Fuzzy Search service. En este caso, usó el servicio de búsqueda para devolver la ubicación de Space Needle de Seattle y utilizó los valores deIn this case, you used the Search service to return the location of the Seattle Space Needle and used the lat. latitud y/ lon. longitud para orientar la búsqueda.values to orient the search.

  6. En Params (Parámetros), escriba los siguientes pares clave-valor y haga clic en Enviar:In Params, enter the following Key / Value pairs and click Send:

    Búsqueda aproximada

    ClaveKey ValorValue
    latitudlat 47,62052547.620525
    longitudlon -122,349274-122.349274

Buscar las coordenadas y las propiedades de direcciónSearch for address properties and coordinates

Puede pasar una dirección completa o parcial a la API de búsqueda de direcciones y recibir una respuesta que incluye propiedades de la dirección detalladas como la municipalidad o la subdivisión, así como valores posicionales de latitud y longitud.You can pass a complete or partial street address to the search address API and receive a response that includes detailed address properties such as municipality or subdivision, as well as positional values in latitude and longitude.

  1. En Postman, haga clic en Nueva solicitud | Solicitud GET y asígnele el nombre Búsqueda de direcciones.In Postman, click New Request | GET request and name it Address Search.

  2. En la pestaña Builder, seleccione el método HTTP GET, escriba la dirección URL de solicitud para el punto de conexión de API y seleccione un protocolo de autorización, si procede.On the Builder tab, select the GET HTTP method, enter the request URL for your API endpoint, and select an authorization protocol, if any.

    Búsqueda de direcciones

    ParámetroParameter Valor sugeridoSuggested value
    HTTP methodHTTP method GETGET
    URL de la solicitudRequest URL https://atlas.microsoft.com/search/address/json?
    AutorizaciónAuthorization Sin autenticaciónNo Auth
  3. Haga clic en Params (Parámetros) y especifique los siguientes pares clave-valor para utilizar como parámetros de consulta o ruta de acceso en la dirección URL de la solicitud:Click Params, and enter the following Key / Value pairs to use as query or path parameters in the request URL:

    Búsqueda de direcciones

    ClaveKey ValorValue
    api-versionapi-version 1.01.0
    subscription-keysubscription-key <la clave de Azure Maps><your Azure Maps key>
    queryquery 400 Broad St, Seattle, WA 98109400 Broad St, Seattle, WA 98109
  4. Haga clic en Enviar y revise el cuerpo de la respuesta.Click Send and review the response body.

    En este caso, especificó una consulta de dirección completa y recibe un solo resultado en el cuerpo de respuesta.In this case, you specified a complete address query and receive a single result in the response body.

  5. En Params (Parámetros), edite la cadena de consulta de modo que tenga el siguiente valor:In Params, edit the query string to the following value:

        400 Broad, Seattle
    
  6. Agregue la siguiente clave o par clave-valor a la sección Params y haga clic en Enviar:Add the following Key / Value pair to the Params section and click Send:

    ClaveKey ValorValue
    typeaheadtypeahead truetrue

    La marca typeahead indica a la API de búsqueda de direcciones que trate la consulta como una entrada parcial y devuelva una matriz de valores predictivos.The typeahead flag tells the Address Search API to treat the query as a partial input and return an array of predictive values.

  1. En Postman, haga clic en Nueva solicitud | Solicitud GET y asígnele el nombre Búsqueda de direcciones inversa.In Postman, click New Request | GET request and name it Reverse Address Search.

  2. En la pestaña Builder, seleccione el método HTTP GET y escriba la dirección URL de solicitud para el punto de conexión de API.On the Builder tab, select the GET HTTP method and enter the request URL for your API endpoint.

    Dirección URL de Búsqueda de direcciones inversa

    ParámetroParameter Valor sugeridoSuggested value
    HTTP methodHTTP method GETGET
    URL de la solicitudRequest URL https://atlas.microsoft.com/search/address/reverse/json?
    AutorizaciónAuthorization Sin autenticaciónNo Auth
  3. Haga clic en Params (Parámetros) y especifique los siguientes pares clave-valor para utilizar como parámetros de consulta o ruta de acceso en la dirección URL de la solicitud:Click Params, and enter the following Key / Value pairs to use as query or path parameters in the request URL:

    Parámetros de Búsqueda de direcciones inversa

    ClaveKey ValorValue
    api-versionapi-version 1.01.0
    subscription-keysubscription-key <la clave de Azure Maps><your Azure Maps key>
    queryquery 47,591180,-122,33270047.591180,-122.332700
  4. Haga clic en Enviar y revise el cuerpo de la respuesta.Click Send and review the response body.

    La respuesta incluye información de dirección clave sobre Safeco Field.The response includes key address information about Safeco Field.

  5. Agregue la siguiente clave o par clave-valor a la sección Params y haga clic en Enviar:Add the following Key / Value pair to the Params section and click Send:

    ClaveKey ValorValue
    númeronumber truetrue

    Si el parámetro de consulta number se envía con la solicitud, la respuesta puede incluir el lado de la calle (izquierda o derecha) y también una posición de desplazamiento para ese número.If the number query parameter is sent with the request, the response may include the side of the street (Left/Right) and also an offset position for that number.

  6. Agregue la siguiente clave o par clave-valor a la sección Params y haga clic en Enviar:Add the following Key / Value pair to the Params section and click Send:

    ClaveKey ValorValue
    returnSpeedLimitreturnSpeedLimit truetrue

    Cuando se establece el parámetro de consulta returnSpeedLimit, la respuesta devuelve el límite de velocidad publicado.When the returnSpeedLimit query parameter is set, the response return of the posted speed limit.

  7. Agregue la siguiente clave o par clave-valor a la sección Params y haga clic en Enviar:Add the following Key / Value pair to the Params section and click Send:

    ClaveKey ValorValue
    returnRoadUsereturnRoadUse truetrue

    Cuando se establece el parámetro de consulta returnRoadUse, la respuesta devuelve la matriz de uso de carretera para códigos geográficos inversos a nivel de calle.When the returnRoadUse query parameter is set, the response returns the road use array for reverse geocodes at street level.

  8. Agregue la siguiente clave o par clave-valor a la sección Params y haga clic en Enviar:Add the following Key / Value pair to the Params section and click Send:

    ClaveKey ValorValue
    roadUseroadUse truetrue

    Puede restringir la consulta de código geográfico inversa a un tipo específico de uso de carretera mediante el parámetro de consulta roadUse.You can restrict the reverse geocode query to a specific type of road use using the roadUse query parameter.

  1. En Postman, haga clic en Nueva solicitud | Solicitud GET y asígnele el nombre Búsqueda de calles transversales de direcciones inversa.In Postman, click New Request | GET request and name it Reverse Address Cross Street Search.

  2. En la pestaña Builder, seleccione el método HTTP GET y escriba la dirección URL de solicitud para el punto de conexión de API.On the Builder tab, select the GET HTTP method and enter the request URL for your API endpoint.

    Búsqueda de calles transversales de direcciones inversa

    ParámetroParameter Valor sugeridoSuggested value
    HTTP methodHTTP method GETGET
    URL de la solicitudRequest URL https://atlas.microsoft.com/search/address/reverse/crossstreet/json?
    AutorizaciónAuthorization Sin autenticaciónNo Auth
  3. Haga clic en Params (Parámetros) y especifique los siguientes pares clave-valor para utilizar como parámetros de consulta o ruta de acceso en la dirección URL de la solicitud:Click Params, and enter the following Key / Value pairs to use as query or path parameters in the request URL:

    ClaveKey ValorValue
    api-versionapi-version 1.01.0
    subscription-keysubscription-key <la clave de Azure Maps><your Azure Maps key>
    queryquery 47,591180,-122,33270047.591180,-122.332700
  4. Haga clic en Enviar y revise el cuerpo de la respuesta.Click Send and review the response body.

Pasos siguientesNext steps