Compartir a través de


Migración de la API Find a Location by Query de Bing Maps

En este artículo se explica cómo migrar Bing Maps Find a Location by Query API a Get Geocoding API de Azure Maps. La API Get Geocoding de Azure Maps se usa para obtener coordenadas de longitud y latitud de una dirección postal, un lugar o punto de referencia. Get Geocoding API de Azure Maps admite la entrada de geocodificación en un formato no estructurado o estructurado. Esta documentación de migración es para escenarios en los que la entrada de geocodificación, como la dirección postal, la localidad, el código postal o el nombre de punto de referencia, tiene un formato no estructurado (query=): similar al que admite Bing Maps Find a Location by Query API. Para obtener información sobre cómo migrar escenarios de Mapas de Bing en los que la entrada de geocodificación está estructurada para encontrar una ubicación por dirección, consulte Migración de Mapas de Bing Find a Location by Address API.

Prerrequisitos

Diferencias destacadas

  • Bing Maps Find a Location by Query API solo admite la entrada de geocodificación en formato no estructurado, mientras que La API Get Geocoding de Azure Maps admite la entrada de geocodificación en un formato no estructurado (query=) o estructurado (addressLine=). Para la geocodificación de nombres de hitos, use la API de Azure Maps Get Geocoding con el formato de entrada no estructurado.
  • Bing Maps Find a Location by Query API devuelve coordenadas en formato de latitud y longitud, mientras que la API Get Geocoding de Azure Maps devuelve coordenadas en formato de longitud y latitud, tal como se define en el formato GeoJSON .
  • Bing Maps Find a Location by Query API admite el formato de respuesta XML y JSON. Get Geocoding API de Azure Maps admite GeoJSON.
  • A diferencia de Bing Maps Find a Location by Query API, Azure Maps Get Geocoding API tiene un view parámetro de entrada, que es una cadena que representa un código iso 3166-1 alpha-2 de región o país. El view parámetro de entrada modifica los bordes y etiquetas disputados geopolíticas para alinearse con la región de usuario especificada. Para obtener más información, consulte Parámetros de URI.
  • A diferencia de Bing Maps Find a Location by Query API, Azure Maps Get Geocoding API no admite actualmente la geocodificación de direcciones en China.
  • A diferencia de Bing Maps for Enterprise, Azure Maps es un servicio global que admite la especificación de un ámbito geográfico, lo que permite límites de residencia de datos a las áreas geográficas (geo) europeas (UE) o Estados Unidos (EE. UU.). Todas las solicitudes (incluidos los datos de entrada) se procesan exclusivamente en el área geográfica especificada. Para obtener más información, consulte ámbito geográfico.

Seguridad y autenticación

Mapas de Bing para la empresa solo admite la autenticación de clave de API. Azure Maps admite varias formas de autenticar llamadas API, como una clave de suscripción, Microsoft Entra ID y token de firma de acceso compartido (SAS). Para más información sobre la seguridad y la autenticación en Azure Maps, consulte autenticación con Azure Maps y la sección Seguridad de la documentación de obtención de geocodificación de Azure Maps.

Parámetros de solicitud

En la tabla siguiente se enumeran los parámetros de solicitud bing Maps Find a Location by Query y el equivalente de Azure Maps:

Parámetro de solicitud de Bing Maps Alias del parámetro de solicitud de Bing Maps Parámetro de solicitud de Azure Maps Obligatorio en Azure Maps Tipo de datos de Azure Maps Description
cultura c Encabezado de solicitud: Accept-Language Falso cuerda / cadena Como se especifica en el encabezado de solicitud de Azure Maps, culture define el idioma usado en los resultados de búsqueda al usar la API Get Geocoding de Azure Maps. Para obtener más información, consulte Idiomas admitidos.
include Incl No es necesario No es necesario No es necesario En Bing Maps Find a Location by Query API (Buscar una ubicación por query API), el include parámetro de entrada es necesario para obtener un código de país ISO de dos letras para el resultado de la ubicación en la respuesta (include=ciso2) y especificar que la respuesta muestra cómo se anificó la cadena de consulta en valores de dirección (include=queryParse). En la API Get Geocoding de Azure Maps, el código de país ISO de dos letras se devuelve de forma predeterminada y no admite un equivalente queryParse.
includeNeighborhood inclnb No es necesario No es necesario No es necesario En La API Get Geocoding de Azure Maps, la información de vecindario se devuelve de forma predeterminada en la respuesta, cuando está disponible. 
maxResults maxRes top Falso Entero (int32) En Get Geocoding API de Azure Maps, el número predeterminado de respuestas devueltas es 5. El mínimo es 1 y el máximo es 20. 
query q consulta Cierto cuerda / cadena
IP de usuario uip No está soportado No compatible No compatible
ubicaciónUsuario ul Coordenadas Falso número[] En la API de Geocodificación de Azure Maps, las coordenadas de la Tierra se especifican en formato de longitud y latitud (longitud, latitud). Al especificar este parámetro, se tiene en cuenta la ubicación del usuario y los resultados devueltos son más relevantes para el usuario.  
userMapView umv bbox Falso número[] Área rectangular en la tierra definida como objeto de rectángulo delimitador. Los lados de los rectángulos se definen mediante valores de longitud y latitud (longitud1,latitud1,longitud2,latitud2). Use la siguiente sintaxis para especificar un cuadro delimitador.

Longitud oeste, latitud sur, longitud este, latitud norte

Al especificar este parámetro, el área geográfica se tiene en cuenta al calcular los resultados de una consulta de ubicación. 
userRegion ur vista Falso cuerda / cadena Cadena que representa un código de país o región ISO 3166-1 Alpha-2. Esto modifica las fronteras y etiquetas geopolíticas disputadas para alinearse con la región del usuario especificada. De forma predeterminada, el parámetro View se establece en Auto aunque no esté definido en la solicitud.

Para obtener más información sobre las vistas disponibles, vea Vistas admitidas.

Para obtener más información sobre los parámetros de solicitud de la API Get Geocoding de Azure Maps, consulte Parámetros de URI.

Solicitudes de ejemplo

Bing Maps Solicitud POST de API para encontrar una ubicación por consulta:

http://dev.virtualearth.net/REST/v1/Locations/15127 NE 24th Street Redmond WA&key={BingMapsKey}

Solicitud POST de Get Geocoding de la API de Azure Maps:

https://atlas.microsoft.com/geocode?api-version=2023-06-01&query=15127 NE 24th Street Redmond WA&subscription-key={Your-Azure-Maps-Subscription-key}

Campos de respuesta

En la tabla siguiente se enumeran los campos que pueden aparecer en la respuesta HTTP cuando se ejecuta bing Maps Find a Location by Query request (Buscar una ubicación por consulta ) y el equivalente de Azure Maps:

Campo de Bing Maps Campo de Azure Maps Description
dirección: líneaDeDirección (JSON)

Address: AddressLine (XML)
address: addressLine
address: adminDistrict (JSON)

Dirección: AdminDistrict (XML)
address: adminDistricts
dirección: adminDistrict2 (JSON)

Dirección: AdminDistrict2 (XML)
address: adminDistricts
address: countryRegion (JSON)

Dirección: CountryRegion (XML)
address: countryRegion
dirección: countryRegionIso2 (JSON)

Dirección: CountryRegionIso2 (XML)
dirección: countryRegion - iso
address: neighborhood (JSON)

Dirección: Barrio (XML)
dirección: vecindario
address: formattedAddress (JSON)

Dirección: FormattedAddress (XML)
address: formattedAddress
address: localidad (JSON)

Dirección: Localidad (XML)
address: localidad
dirección: códigoPostal (JSON)

Dirección: Código postal (XML)
dirección: código postal
address: Intersection – baseStreet (JSON)

Dirección: Intersección – BaseStreet (XML)
address: intersection -baseStreet
address: Intersection – secondaryStreet1 (JSON)

address: intersection - secondaryStreet1
address: Intersección – calleSecundaria2 (JSON)

Dirección: Intersección – Calle Secundaria 2 (XML)
address: intersección - calle secundaria 2
address: Intersection – intersectionType (JSON)

Address: Intersection – IntersectionType (XML)
address: intersection - intersectionType
address: Intersection – displayName (JSON)

Address: Intersection – DisplayName (XML)
address: intersection - displayName
bbox (JSON)

BoundingBox (XML)
características: bbox En Bing Maps Find a Location by Query API (Buscar una ubicación por query API), las coordenadas de la respuesta están en formato de latitud y longitud. Las coordenadas de la respuesta de la API Get Geocoding de Azure Maps están en el formato de longitud y latitud (ya que se usa el formato GeoJSON).  
métodoDeCálculo (JSON)

MétodoDeCálculo (XML)
propiedades: geocodePoints - método de cálculo
confianza (JSON)

Confianza (XML)
propiedades: confianza
entityType (tipoDeEntidad) (JSON)

TipoDeEntidad (XML)
propiedades: tipo
geocodePoints (JSON)

GeocodePoint (XML)
properties: geocodePoints : coordenadas
matchCodes (JSON)

MatchCode (XML)
properties: matchCodes
nombre (JSON)

Nombre (XML)
No compatible formattedAddress es el equivalente de Azure Maps.
punto (JSON)

Punto (XML)
características: coordenadas En Bing Maps Find a Location by Query API (Buscar una ubicación por query API), las coordenadas de la respuesta están en formato de latitud y longitud. Las coordenadas de la respuesta de la API Get Geocoding de Azure Maps están en el formato de longitud y latitud (ya que se usa el formato GeoJSON).  
queryParse (JSON)

QueryParse (XML)
No compatible
tiposDeUso (usageTypes) (JSON)

tipoDeUso (XML)
propiedades: puntosDeGeocodificación: tiposDeUso

Para obtener más información sobre los campos de respuesta de la API get geocoding de Azure Maps, consulte Definiciones.

Ejemplos de respuesta

En el ejemplo JSON siguiente se muestra lo que se devuelve en el cuerpo de la respuesta HTTP al ejecutar la solicitud De búsqueda de una ubicación por consulta de Mapas de Bing:

{ 
    "authenticationResultCode": "ValidCredentials", 
    "brandLogoUri": "https://dev.virtualearth.net/Branding/logo_powered_by.png", 
    "copyright": "Copyright © 2024 Microsoft and its suppliers. All rights reserved. This API cannot be accessed and the content and any results may not be used, reproduced or transmitted in any manner without express written permission from Microsoft Corporation.", 
    "resourceSets": [ 
        { 
            "estimatedTotal": 1, 
            "resources": [ 
                { 
                    "__type": "Location:http://schemas.microsoft.com/search/local/ws/rest/v1", 
                    "bbox": [ 
                        47.62649628242932, 
                        -122.14631082421619, 
                        47.634221717570675, 
                        -122.1310271757838 
                    ], 
                    "name": "15127 NE 24th St, Redmond, WA 98052", 
                    "point": { 
                        "type": "Point", 
                        "coordinates": [ 
                            47.630359, 
                            -122.138669 
                        ] 
                    }, 
                    "address": { 
                        "addressLine": "15127 NE 24th St", 
                        "adminDistrict": "WA", 
                        "adminDistrict2": "King County", 
                        "countryRegion": "United States", 
                        "formattedAddress": "15127 NE 24th St, Redmond, WA 98052", 
                        "locality": "Redmond", 
                        "postalCode": "98052" 
                    }, 
                    "confidence": "High", 
                    "entityType": "Address", 
                    "geocodePoints": [ 
                        { 
                            "type": "Point", 
                            "coordinates": [ 
                                47.630359, 
                                -122.138669 
                            ], 
                            "calculationMethod": "Rooftop", 
                            "usageTypes": [ 
                                "Display" 
                            ] 
                        }, 
                        { 
                            "type": "Point", 
                            "coordinates": [ 
                                47.630563, 
                                -122.1387383 
                            ], 
                            "calculationMethod": "Rooftop", 
                            "usageTypes": [ 
                                "Route" 
                            ] 
                        } 
                    ], 
                    "matchCodes": [ 
                        "Good" 
                    ] 
                } 
            ] 
        } 
    ], 
    "statusCode": 200, 
    "statusDescription": "OK", 
    "traceId": "7896468b37528ac145ef77cc62484fd6|MWH0032BE2|0.0.0.1|Ref A: 7D01B283F7644D2891600E265FB30B24 Ref B: CO1EDGE2318 Ref C: 2024-04-23T18:29:55Z" 

En el ejemplo JSON siguiente se muestra lo que se devuelve en el cuerpo de la respuesta HTTP al ejecutar una solicitud Get Geocoding de Azure Maps:

{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": "Point",
                "coordinates": [
                    -122.138679,
                    47.630356
                ]
            },
            "bbox": [
                -122.14632082377759,
                47.62649328242932,
                -122.1310371762224,
                47.634218717570675
            ],
            "properties": {
                "type": "Address",
                "confidence": "High",
                "matchCodes": [
                    "Good"
                ],
                "geocodePoints": [
                    {
                        "calculationMethod": "Rooftop",
                        "usageTypes": [
                            "Display"
                        ],
                        "geometry": {
                            "type": "Point",
                            "coordinates": [
                                -122.138679,
                                47.630356
                            ]
                        }
                    },
                    {
                        "calculationMethod": "Rooftop",
                        "usageTypes": [
                            "Route"
                        ],
                        "geometry": {
                            "type": "Point",
                            "coordinates": [
                                -122.138685,
                                47.6305637
                            ]
                        }
                    }
                ],
                "address": {
                    "addressLine": "15127 NE 24th St",
                    "postalCode": "98052",
                    "locality": "Redmond",
                    "formattedAddress": "15127 NE 24th St, Redmond, WA 98052",
                    "countryRegion": {
                        "name": "United States",
                        "ISO": "US"
                    },
                    "adminDistricts": [
                        {
                            "shortName": "WA"
                        },
                        {
                            "shortName": "King County"
                        }
                    ]
                }
            }
        }
    ]
}

Uso de transacciones

Al igual que Bing Maps Find a Location by Query API, Azure Maps Get Geocoding API registra una transacción facturable por solicitud. Para más información sobre las transacciones de Azure Maps, vea Descripción de las transacciones de Azure Maps.

Información adicional

  • Get Geocoding Batch: se usa para enviar un lote de consultas a la API Get Geocoding en una única solicitud sincrónica.

Support