Przenieś do wyszukiwania w pobliżu (nowość)

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Wprowadzenie

Interfejs Places API obsługuje wyszukiwanie w pobliżu (starsza wersja). Jeśli znasz interfejs Nearby Search (starszy), Nearby Search (nowy) wprowadza te zmiany:

  • Wyszukiwanie w pobliżu (nowe) korzysta z żądań HTTP POST. Przekazywanie parametrów w treści żądania lub w nagłówkach w ramach żądania HTTP POST. W przypadku wyszukiwania w pobliżu (starsza wersja) parametry adresu URL przekazujesz za pomocą żądania HTTP GET.
  • Maskowanie pola jest wymagane. Musisz określić, które pola mają być zwracane w odpowiedzi. Nie ma domyślnej listy zwracanych pól. Jeśli pominiesz tę listę, metody zwrócą błąd. Więcej informacji znajdziesz w sekcji FieldMask.
  • Interfejs Nearby Search (New) obsługuje zarówno klucze interfejsu API, jak i tokeny OAuth jako mechanizm uwierzytelniania.
  • W przypadku wyszukiwania w pobliżu (nowego) jako format odpowiedzi obsługiwany jest tylko JSON.
  • Wszystkie żądania zawierające zapytanie tekstowe powinny teraz korzystać z wyszukiwania tekstowego (nowego), ponieważ wyszukiwanie w pobliżu (nowe) nie obsługuje wprowadzania tekstu.
  • Format odpowiedzi JSON w przypadku wyszukiwania w pobliżu (nowego) zmienił się w porównaniu z formatem starszych interfejsów API. Więcej informacji znajdziesz w artykule Migracja odpowiedzi interfejsu Places API.

W tabeli poniżej znajdziesz parametry wyszukiwania w pobliżu (starsza wersja), które zostały zmienione lub zmodyfikowane w wyszukiwaniu w pobliżu (nowa wersja), oraz parametry, które nie są już obsługiwane.

Bieżący parametr Nowy parametr Uwagi
keyword Nieobsługiwane. Zamiast niej używaj funkcji Wyszukiwanie tekstowe (nowa).
language languageCode
location locationRestriction Wymagane.
maxprice/minprice Nieobsługiwane.
maxResultCount Nowy parametr.
opennow Nieobsługiwane.
pagetoken Nieobsługiwane.
radius Skorzystaj z locationRestriction już teraz.
rankby rankPreference
regionCode Nowy parametr.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
Nowe parametry akceptują też wiele wartości typu. Starszy interfejs API akceptuje tylko jedną wartość.

Przykładowe żądanie

Ten przykładowy kod wysyła żądanie GET do wyszukiwania w pobliżu (starsza wersja). W tym przykładzie wysyłasz żądanie odpowiedzi w formacie 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 przypadku wyszukiwania w pobliżu (nowego) wysyłasz żądanie POST i przekazujesz wszystkie parametry w treści żądania JSON lub w nagłówkach w ramach żądania POST. W tym przykładzie używamy też maski pola, aby odpowiedź zawierała tylko nazwę wyświetlaną 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