Esegui la migrazione a Ricerca nelle vicinanze (novità)

L'API Places supporta la funzionalità Nearby Search (legacy). Se conosci la Ricerca nelle vicinanze (legacy), la Ricerca nelle vicinanze (nuova) apporta le seguenti modifiche:

  • La nuova ricerca nelle vicinanze utilizza richieste POST HTTP. Passa i parametri nel corpo della richiesta o nelle intestazioni come parte di una richiesta POST HTTP. Al contrario, con la Ricerca nelle vicinanze (legacy), passi i parametri URL utilizzando una richiesta HTTP GET.
  • La maschera dei campi è obbligatoria. Devi specificare i campi che vuoi che vengano restituiti nella risposta. Non esiste un elenco predefinito dei campi restituiti. Se ometti questo elenco, i metodi restituiscono un errore. Per ulteriori informazioni, consulta FieldMask.
  • Ricerca nelle vicinanze (nuova) supporta sia le chiavi API sia i token OAuth come meccanismo di autenticazione.
  • Solo JSON è supportato come formato di risposta nella ricerca nelle vicinanze (nuova).
  • Tutte le richieste che includono una query di testo ora devono utilizzare Ricerca di testi (nuova) perché la Ricerca nelle vicinanze (nuova) non supporta l'inserimento di testo.
  • Il formato della risposta JSON per la Ricerca nelle vicinanze (nuova) è cambiato rispetto a quello delle API precedenti. Per maggiori dettagli, consulta Eseguire la migrazione della risposta dell'API Places.

La tabella seguente elenca i parametri nella ricerca nelle vicinanze (legacy) che sono stati rinominati o modificati per la ricerca nelle vicinanze (nuova) o i parametri che non sono più supportati.

Parametro corrente Nuovo parametro Note
keyword Non supportati. Utilizza Ricerca di testo (nuova).
language languageCode
location locationRestriction Obbligatorio.
maxprice/minprice Non supportati.
maxResultCount Nuovo parametro.
opennow Non supportati.
pagetoken Non supportati.
radius Utilizza subito locationRestriction.
rankby rankPreference
regionCode Nuovo parametro.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
I nuovi parametri accettano anche più valori di tipo. L'API precedente accetta un solo valore.

Richiesta di esempio

L'esempio seguente di richiesta GET utilizza la ricerca nelle vicinanze (legacy). In questo esempio, richiedi una risposta JSON contenente informazioni su luoghi di tipo restaurant e passi tutti i parametri come parametri URL:

curl -L -X GET \
'https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=37.7937%2C-122.3965&radius=500&type=restaurant&key=API_KEY'

Con la ricerca nelle vicinanze (nuova), effettui una richiesta POST e passi tutti i parametri nel corpo della richiesta JSON o nelle intestazioni come parte della richiesta POST. Questo esempio utilizza anche una maschera di campo, pertanto la risposta include solo il nome visualizzato e l'indirizzo formattato del luogo:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965},
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.formattedAddress" \
https://places.googleapis.com/v1/places:searchNearby