Esegui la migrazione a Ricerca testuale (novità)

L'API Places supporta l'attuale Ricerca testuale. Se hai familiarità con la ricerca testuale esistente, la nuova versione di Ricerca testuale apporta le seguenti modifiche:

  • La nuova ricerca testuale 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 testuale 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 testuale supporta sia le chiavi API sia i token OAuth come meccanismo di autenticazione.
  • Nella nuova ricerca testuale è supportato solo JSON come formato di risposta.
  • La ricerca testuale esistente ti consente di specificare le coordinate di latitudine e longitudine nella stringa di query. Ad esempio: query=37.4239,-122.0925. Questa opzione non è supportata nella nuova ricerca testuale.

    Utilizza la ricerca inversa della geocodifica per cercare coordinate e restituire un indirizzo oppure Ricerca nelle vicinanze (nuova) per trovare luoghi nelle vicinanze di una località specifica.

  • Il formato della risposta JSON per l'API Text 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 ricerca testuale esistente che sono stati rinominati o modificati per la nuova ricerca testuale oppure i parametri non più supportati.

Parametro attuale Nuovo parametro Note
evOptions Nuovo parametro.
language languageCode
location locationBias
maxprice/minprice priceLevels
opennow openNow
pagetoken Non supportati.
query textQuery Obbligatorio in tutte le richieste.
radius locationBias Specifica il raggio quando definisci un locationBias.
region regionCode
type includedType Prende un solo valore.
strictTypeFiltering Nuovo parametro.

Esempio di richiesta

La richiesta GET di esempio seguente utilizza la ricerca testuale esistente. In questo esempio, richiedi una risposta JSON contenente informazioni su "Spicy Vegetarian Food in Sydney, in Australia" e passi tutti i parametri come parametri URL:

curl -L -X GET \
'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY

Con la ricerca testuale (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 in modo che la risposta includa solo il nome visualizzato e l'indirizzo formattato del luogo:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-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:searchText'