Esegui la migrazione a Ricerca nelle vicinanze (novità)

L'API Places supporta l'attuale Ricerca nelle vicinanze. Se conosci la funzionalità esistente, la nuova versione 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 funzionalità Ricerca nelle vicinanze esistente, passi i parametri URL utilizzando una richiesta HTTP GET.
  • Il mascheramento dei campi è obbligatorio. Devi specificare quali campi vuoi che vengano restituiti nella risposta. Non esiste un elenco predefinito dei campi restituiti. Se ometti questo elenco, i metodi restituiscono un errore. Per maggiori informazioni, vedi FieldMask.
  • La nuova Ricerca nelle vicinanze supporta sia le chiavi API sia i token OAuth come meccanismo di autenticazione.
  • Nella nuova ricerca nelle vicinanze è supportato solo JSON come formato di risposta.
  • Tutte le richieste che includono una query di testo ora dovrebbero utilizzare Ricerca testuale (nuova) perché Ricerca nelle vicinanze (nuova) non supporta l'inserimento di testo.
  • Il formato della risposta JSON per l'API Nearby Search (nuova) è cambiato rispetto a quello delle API esistenti. Per maggiori dettagli, consulta Eseguire la migrazione della risposta dell'API Places.

Nella tabella seguente sono elencati i parametri della funzionalità Ricerca nelle vicinanze esistente che sono stati rinominati o modificati per la nuova funzione oppure i parametri non più supportati.

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

Esempio di richiesta

La richiesta GET di esempio seguente utilizza la Ricerca nelle vicinanze esistente. In questo esempio, richiedi una risposta JSON contenente informazioni sui 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 Nearby Search (novità), 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 in modo che la risposta includa 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