Place Autocomplete (Legacy) использует токены сеанса для группировки фаз запроса и выбора поиска автозаполнения пользователя в отдельный сеанс для выставления счетов. Сеанс начинается, когда пользователь начинает вводить запрос, и завершается, когда он выбирает место и выполняется вызов Place Details (Legacy). Каждый сеанс может иметь несколько запросов автозаполнения, за которыми следует один выбор места. Ключ(и) API, используемые для каждого запроса в сеансе, должны принадлежать одному проекту консоли Google Cloud. После завершения сеанса токен больше не действителен; ваше приложение должно генерировать новый токен для каждого сеанса. Если параметр sessiontoken
пропущен или если вы повторно используете токен сеанса, сеанс тарифицируется так, как если бы токен сеанса не был предоставлен (каждый запрос тарифицируется отдельно).
Мы рекомендуем следующие рекомендации:
- Используйте токены сеанса для всех сеансов автозаполнения.
- Генерируйте новый токен для каждого сеанса.
- Убедитесь, что ключ(и) API, используемые для всех запросов Place Autocomplete (Legacy) и Place Details (Legacy) в рамках сеанса, принадлежат одному и тому же проекту консоли Google Cloud.
- Обязательно передайте уникальный токен сеанса для каждого нового сеанса. Использование одного и того же токена для более чем одного сеанса приведет к тому, что каждый запрос будет выставлен по отдельности.
При желании вы можете опустить токен сеанса автозаполнения из запроса. Если токен сеанса опущен, каждый запрос оплачивается отдельно, активируя SKU Autocomplete - Per Request . Если вы повторно используете токен сеанса, сеанс считается недействительным, и запросы оплачиваются так, как если бы токен сеанса не был предоставлен.
Пример
Когда пользователь вводит запрос, запрос автозаполнения вызывается каждые несколько нажатий клавиш (не посимвольно), и возвращается список возможных результатов. Когда пользователь делает выбор из списка результатов, выбор считается запросом, и все запросы, сделанные во время поиска, объединяются и учитываются как один запрос. Если пользователь выбирает место, поисковый запрос доступен бесплатно, и взимается только за запрос данных о месте. Если пользователь не делает выбор в течение нескольких минут с начала сеанса, взимается только за поисковый запрос.
Давайте рассмотрим этот поток событий с точки зрения приложения.
- Пользователь начинает вводить запрос для поиска «Париж, Франция».
- При обнаружении пользовательского ввода приложение создает новый токен сеанса — «Токен А».
- По мере того, как пользователь печатает, API каждые несколько символов выполняет запрос автозаполнения, отображая новый список потенциальных результатов для каждого из них:
"П"
"Пар"
"Париж,"
"Париж, Фр" - Когда пользователь делает выбор:
- Все запросы, полученные в результате запроса, группируются и добавляются в сеанс, представленный «Токеном A», как один запрос.
- Выбор пользователя учитывается как запрос сведений о месте и добавляется к сеансу, представленному «Токеном A».
- Сеанс завершается, и приложение сбрасывает «Токен А».
Дополнительную информацию о том, как тарифицируются запросы Place Autocomplete (Legacy), см. в разделе Использование и выставление счетов .
Создать токены сеанса
Чтобы создать токен сеанса, вызовите AutocompleteSessionToken.newInstance()
.