Interfejs Places API obsługuje dotychczasowe wyszukiwanie w pobliżu. Jeśli korzystasz już z funkcji Wyszukiwanie w pobliżu, nowa wersja wyszukiwania w pobliżu wprowadza te zmiany:
- Nowe wyszukiwanie w pobliżu używa żądań HTTP POST. Przekazuj parametry w treści żądania lub w nagłówkach w ramach żądania POST HTTP. W przeciwieństwie do obecnej funkcji Wyszukiwania w pobliżu przesyłasz parametry 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 w pobliżu obsługuje jako mechanizm uwierzytelniania zarówno klucze interfejsu API, jak i tokeny OAuth.
- Nowa funkcja wyszukiwania w pobliżu obsługuje tylko format JSON.
- Wszystkie żądania zawierające zapytanie tekstowe powinny teraz korzystać z opcji Wyszukiwanie tekstowe (nowość), ponieważ Wyszukiwanie w pobliżu (nowość) nie pozwala na wprowadzanie tekstu.
- Format odpowiedzi JSON interfejsu API wyszukiwania w pobliżu (nowy) 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 w pobliżu, które zostały zmienione lub zmienione na potrzeby nowej funkcji Wyszukiwanie w pobliżu, a także parametry, które nie są już obsługiwane.
Bieżący parametr | Nowy parametr | Notatki |
---|---|---|
keyword |
Nieobsługiwane. Użyj wyszukiwania tekstowego (nowego). | |
language |
languageCode |
|
location |
locationRestriction |
Wymagane. |
maxprice/minprice |
|
Nieobsługiwane. |
maxResultCount |
Nowy parametr. | |
opennow |
|
Nieobsługiwane. |
pagetoken |
Nieobsługiwane. | |
radius |
|
Użyj konta locationRestriction już teraz. |
rankby |
rankPreference |
|
regionCode |
Nowy parametr. | |
type |
includedTypes excludedTypes includedPrimaryTypes excludedPrimaryTypes
|
Nowe parametry obsługują też różne wartości typów. Istniejący interfejs API akceptuje tylko 1 wartość. |
Przykładowe żądanie
Poniższe przykładowe żądanie GET korzysta z wyszukiwania w pobliżu. W tym przykładzie żądasz odpowiedzi JSON zawierającej informacje o miejscach typu restaurant
i przekazujesz wszystkie parametry jako parametry adresu 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'
W ramach funkcji Wyszukiwanie w pobliżu (nowość) możesz wysłać żądanie POST i przekazywać wszystkie parametry w treści żądania JSON lub w nagłówkach jako część żą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 '{ "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