Places API obsługuje dotychczasowe wyszukiwanie tekstowe. Jeśli znasz już funkcję wyszukiwania tekstowego, nowa wersja tej funkcji wprowadza te zmiany:
- Nowe wyszukiwanie tekstowe korzysta z żądań HTTP POST. Przekazuj parametry w treści żądania lub w nagłówkach w ramach żądania POST HTTP. Dotychczasowe wyszukiwanie tekstowe umożliwia natomiast przekazywanie parametrów adresów URL za pomocą żądania HTTP GET.
- Maskowanie pól jest wymagane. Musisz określić, które pola mają być zwracane w odpowiedzi. Nie ma domyślnej listy zwróconych pól. Jeśli pominiesz tę listę, metody zwrócą błąd. Więcej informacji znajdziesz w artykule o FieldMask.
- Nowe wyszukiwanie tekstowe obsługuje jako mechanizm uwierzytelniania zarówno klucze interfejsu API, jak i tokeny OAuth.
- Nowe wyszukiwanie tekstowe obsługuje tylko format JSON.
Obecne wyszukiwanie tekstowe umożliwia określenie szerokości i długości geograficznej w ciągu zapytania. Na przykład:
query=37.4239,-122.0925
. Ta opcja nie jest obsługiwana w nowym wyszukiwaniu tekstowym.Użyj odwrotnego geokodowania, aby wyszukać współrzędne i zwrócić adres, lub wyszukiwania w pobliżu (nowość), aby znaleźć miejsca w pobliżu określonej lokalizacji.
- Format odpowiedzi JSON interfejsu Text Search (nowy) API zmienił się od formatu istniejących interfejsów API. Więcej informacji znajdziesz w artykule o migracji odpowiedzi interfejsu Places API.
Poniższa tabela zawiera listę parametrów w dotychczasowym wyszukiwaniu tekstowym, które zostały zmienione lub zmodyfikowane pod kątem nowej wersji tego wyszukiwania, a także parametry, które nie są już obsługiwane.
Bieżący parametr | Nowy parametr | Notatki |
---|---|---|
evOptions |
Nowy parametr. | |
language |
languageCode |
|
location |
locationBias |
|
maxprice/minprice |
priceLevels |
|
opennow |
openNow |
|
pagetoken |
Nieobsługiwane. | |
query |
textQuery |
Wymagane we wszystkich żądaniach. |
radius |
locationBias |
Podczas definiowania pola locationBias określ promień. |
region |
regionCode |
|
type |
includedType |
Przyjmuje tylko jedną wartość. |
strictTypeFiltering |
Nowy parametr. |
Przykładowe żądanie
Poniższe przykładowe żądanie GET korzysta z istniejącego wyszukiwania tekstowego. W tym przykładzie żądasz odpowiedzi JSON z informacjami o pikantnej kuchni wegetariańskiej w Sydney i przekazujesz wszystkie parametry jako parametry adresu URL:
curl -L -X GET \ 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY
W tym narzędziu możesz wysłać żądanie POST i przekazywać wszystkie parametry w treści żądania JSON lub w nagłówkach w ramach żądania POST. W tym przykładzie zastosowano też maskę pola, dzięki czemu odpowiedź zawiera tylko wyświetlaną nazwę i sformatowany adres miejsca:
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'