es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo buscar POI en la API de HERE por dirección, ciudad, país, etc.?

Tengo dificultades para encontrar documentación o un ejemplo sobre cómo buscar PDI dentro de un radio determinado de una dirección o ubicación. Hasta ahora, todo lo que he visto es la búsqueda por latitud o longitud, lo cual no es factible en mi caso de uso.

La idea es bastante común: un usuario ingresa una ubicación (dirección, código postal, ciudad, país, etc.) lo que lleva a una llamada a la API HERE buscando un punto de interés cerca de la ubicación que se ingresó. Quizás dentro de un radio determinado.

¿Alguien sabe cómo usar la API HERE para buscar por ubicación, no por coordenadas? Estos son los documentos que estoy usando: https://developer.here.com/documentation.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para buscar puntos de interés dentro de un determinado radio de una dirección o ubicación utilizando la API HERE, se pueden combinar las API de Geocodificación y de Búsqueda.

    Primero, use la API de Geocodificación para convertir la dirección o ubicación ingresada por el usuario en coordenadas de latitud y longitud. Esto se puede hacer realizando una llamada al punto final de la API de Geocodificación y pasando la dirección o ubicación como parámetro de consulta.

    Una vez que haya obtenido las coordenadas para la ubicación ingresada, puede utilizar la API de Búsqueda para buscar puntos de interés dentro de un determinado radio de esas coordenadas. La API de Búsqueda proporciona un parámetro llamado “proximidad” que se puede utilizar para especificar el centro del área de búsqueda como coordenadas de latitud y longitud, y un parámetro de “radio” que se puede utilizar para especificar la distancia (en metros) desde el punto central a incluir en la búsqueda.

    Por ejemplo, podría realizar una llamada al punto final de la API de Búsqueda, pasando las coordenadas de latitud y longitud obtenidas de la API de Geocodificación como parámetro de “proximidad” y un radio deseado para la búsqueda como el parámetro de “radio”.

    Aquí hay un código de ejemplo utilizando la API HERE y JavaScript:

    // Geocode the entered location
    var geocodingUrl = "https://geocode.search.hereapi.com/v1/geocode?q=" + userEnteredLocation + "&apiKey=" + apiKey;
    
    fetch(geocodingUrl)
      .then(response => response.json())
      .then(data => {
        // Get the latitude and longitude coordinates from the geocoding response
        var latitude = data.items[0].position.lat;
        var longitude = data.items[0].position.lng;
    
        // Search for points of interest within a certain radius of the entered location
        var searchUrl = "https://discover.search.hereapi.com/v1/discover?at=" + latitude + "," + longitude + "&limit=10&radius=1000&apiKey=" + apiKey;
    
        fetch(searchUrl)
          .then(response => response.json())
          .then(data => {
            // Process the search results
          });
      });
    

    En este ejemplo, primero realizamos una llamada al punto final de la API de Geocodificación para obtener las coordenadas de latitud y longitud para la ubicación ingresada. Luego, construimos una URL para el punto final de la API de Búsqueda, pasando las coordenadas obtenidas como parámetro de “at” y un radio deseado para la búsqueda como el parámetro de “radio”. Finalmente, hacemos una llamada al punto final de la API de Búsqueda y procesamos los resultados.

    Tenga en cuenta que la variable “apiKey” en este código debe reemplazarse con su propia clave de API HERE.

    Para obtener más información sobre cómo utilizar la API HERE para buscar puntos de interés, consulte la documentación de la API HERE: https://developer.here.com/documentation/maps/3.1/.

Comments are closed.