Tokeny sesji

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Autouzupełnianie miejsc wykorzystuje tokeny sesji, aby grupować zapytania i wybory wyszukiwania użytkownika w autouzupełnianiu w osobne sesje dla celów rozliczeniowych. Sesja rozpoczyna się, gdy użytkownik zacznie wpisywać zapytanie, a kończy, gdy użytkownik wybierze miejsce i wywoła metodę szczegółów miejsca. Każda sesja może zawierać wiele zapytań autouzupełniania, po których następuje jedno wybranie miejsca. Klucze interfejsu API używane w przypadku wszystkich żądań w sesji muszą należeć do tego samego projektu Google Cloud Console. Po zakończeniu sesji token jest już nieważny. Aplikacja musi wygenerować nowy token dla każdej sesji. Jeśli pominiesz parametr sessiontoken lub ponownie użyjesz tokena sesji, opłata za sesję zostanie naliczona tak, jakby żaden token sesji nie został podany (każde żądanie jest rozliczane oddzielnie).

Zalecamy stosowanie się do tych wskazówek:

  • Używaj tokenów sesji dla wszystkich sesji autouzupełniania.
  • Wygeneruj nowy token dla każdej sesji.
  • Upewnij się, że klucze interfejsu API używane w przypadku wszystkich żądań autouzupełniania miejsc i informacji o miejscach w ramach sesji należą do tego samego projektu Google Cloud Console.
  • Pamiętaj, aby przekazać unikalny token sesji dla każdej nowej sesji. Używanie tego samego tokena w więcej niż jednej sesji powoduje, że każde żądanie jest rozliczane oddzielnie.

Opcjonalnie możesz pominąć w żądaniu token sesji autouzupełniania. Jeśli pominiesz token sesji, każde żądanie będzie rozliczane oddzielnie, co spowoduje uruchomienie funkcji autouzupełniania – na żądanie. Jeśli ponownie użyjesz tokena sesji, sesja zostanie uznana za nieprawidłową, a żądania będą obciążane tak, jakby nie podano tokena sesji.

Przykład

Gdy użytkownik wpisze zapytanie, autouzupełnianie otrzymuje wywołanie kilku klawiszy naciskanych (a nie znaków) i zwracana jest lista możliwych wyników. Gdy użytkownik dokona wyboru z listy wyników, zaznaczenie zostanie zliczone jako żądanie, a wszystkie żądania wysłane w wynikach wyszukiwania będą grupowane i liczone jako jedno żądanie. Jeśli użytkownik wybierze miejsce, zapytanie jest dostępne bezpłatnie, a opłata za dane z miejsca jest naliczana tylko za opłatą. Jeśli użytkownik nie dokona wyboru w ciągu kilku minut od rozpoczęcia sesji, naliczana będzie tylko opłata za zapytanie.

Przeanalizujmy ten proces zdarzeń z perspektywy aplikacji.

  1. Użytkownik zaczyna wpisywać zapytanie i szuka hasła "Paryż, Francja&quot.
  2. Gdy wykryjemy ruch użytkownika, aplikacja utworzy nowy token sesji „A”
  3. Gdy użytkownik działa, interfejs API wysyła żądanie autouzupełniania co kilka znaków i wyświetla nową listę potencjalnych wyników dla:
    "P"
    "Par"
    "Paryż,"
    "Paryż, Fr"
  4. Gdy użytkownik dokona wyboru:
    • Wszystkie żądania wynikające z zapytania są grupowane i dodawane do sesji, która jest reprezentowana przez "Token A" jako jedno żądanie.
    • Wybór użytkownika jest liczony jako żądanie dotyczące szczegółów miejsca i dodany do sesji przedstawionej w &&ttToken.
  5. Sesja się zakończy, a aplikacja odrzuci &token A&quot.

Więcej informacji o opłatach za żądania autouzupełniania znajdziesz w artykule Użycie i płatności.

Tworzenie tokenów sesji

Aby utworzyć token sesji, wywołaj AutocompleteSessionToken.newInstance().