Esegui la migrazione a Ricerca nelle vicinanze (novità)

L'API Places supporta la funzionalità Ricerca nelle vicinanze esistente. Se conosci la Ricerca nelle vicinanze esistente, la nuova versione della Ricerca nelle vicinanze introduce le seguenti modifiche:

  • La nuova Ricerca nelle vicinanze utilizza richieste POST HTTP. Passa i parametri nel corpo della richiesta o nelle intestazioni nell'ambito di una richiesta HTTP POST. Al contrario, con la Ricerca nelle vicinanze esistente, passi i parametri URL utilizzando una richiesta GET HTTP.
  • 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.
  • La nuova Ricerca nelle vicinanze supporta sia le chiavi API sia i token OAuth come meccanismo di autenticazione.
  • Solo JSON è supportato come formato di risposta nella nuova ricerca nelle vicinanze.
  • 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'input di testo.
  • Il formato della risposta JSON per l'API Ricerca nelle vicinanze (nuova) è cambiato rispetto a quello delle API esistenti. Per maggiori dettagli, consulta Eseguire la migrazione della risposta dell'API Places.

La tabella seguente elenca i parametri della ricerca nelle vicinanze esistenti che sono stati rinominati o modificati per la nuova ricerca nelle vicinanze 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 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 un solo valore.

Richiesta di esempio

La seguente richiesta GET di esempio 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 la Ricerca nelle vicinanze (nuova), invii una richiesta POST e passi tutti i parametri nel corpo della richiesta JSON o negli 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