Mã thông báo phiên

Chọn nền tảng: Android iOS JavaScript Dịch vụ web

Tính năng Tự động hoàn thành sử dụng mã thông báo phiên để nhóm các giai đoạn truy vấn và lựa chọn của một lượt tìm kiếm tự động hoàn thành của người dùng thành một phiên riêng biệt cho mục đích thanh toán. Phiên hoạt động bắt đầu khi người dùng bắt đầu nhập một truy vấn và kết thúc khi họ chọn một địa điểm và thực hiện lệnh gọi đến Thông tin chi tiết về địa điểm. Mỗi phiên có thể có nhiều truy vấn tự động hoàn thành, theo sau là một lựa chọn địa điểm. (Các) khoá API dùng cho mỗi yêu cầu trong một phiên phải thuộc về cùng một dự án Google Cloud Console. Khi một phiên kết thúc, mã thông báo sẽ không còn hợp lệ; ứng dụng của bạn phải tạo mã thông báo mới cho mỗi phiên hoạt động. Nếu thông số sessiontoken bị bỏ qua hoặc nếu bạn sử dụng lại một mã phiên, thì phiên sẽ bị tính phí như thể không có mã thông báo phiên nào được cung cấp (mỗi yêu cầu được tính phí riêng).

Bạn nên làm theo các nguyên tắc sau:

  • Hãy sử dụng mã thông báo phiên cho mọi phiên tự động hoàn thành.
  • Tạo mã thông báo mới cho từng phiên hoạt động.
  • Đảm bảo rằng(các) khóa API được dùng cho tất cả các yêu cầu Tự động hoàn thành địa điểm và Thông tin chi tiết về địa điểm trong một phiên thuộc về cùng một dự án Google Cloud Console.
  • Hãy nhớ chuyển một mã thông báo phiên duy nhất cho mỗi phiên hoạt động mới. Việc sử dụng cùng một mã thông báo cho nhiều phiên hoạt động sẽ khiến mỗi yêu cầu được tính phí riêng.

Bạn có thể tùy ý bỏ qua mã thông báo phiên tự động hoàn thành khỏi một yêu cầu. Nếu bạn bỏ qua mã thông báo phiên, thì mỗi yêu cầu sẽ được lập hóa đơn riêng, kích hoạt Tự động hoàn thành – Mỗi yêu cầu SKU. Nếu bạn sử dụng lại mã thông báo phiên, thì phiên hoạt động sẽ được coi là không hợp lệ và các yêu cầu sẽ bị tính phí như thể không có mã thông báo phiên nào được cung cấp.

Ví dụ:

Khi người dùng nhập một truy vấn, mỗi yêu cầu tự động hoàn thành sẽ được gọi một vài lần nhấn phím (không phải mỗi ký tự) và danh sách kết quả có thể trả về sẽ được trả về. Khi người dùng lựa chọn trong danh sách kết quả, lựa chọn này sẽ được tính là một yêu cầu và tất cả các yêu cầu được đưa ra trong quá trình tìm kiếm sẽ được nhóm lại và tính là một yêu cầu. Nếu người dùng chọn một địa điểm, truy vấn tìm kiếm sẽ được cung cấp miễn phí và chỉ yêu cầu dữ liệu Địa điểm mới được tính phí. Nếu người dùng không đưa ra lựa chọn trong vòng vài phút kể từ khi bắt đầu phiên, thì chỉ truy vấn tìm kiếm mới bị tính phí.

Hãy cùng tìm hiểu luồng sự kiện này từ góc độ ứng dụng.

  1. Người dùng bắt đầu nhập truy vấn để tìm kiếm "Paris, Pháp"
  2. Sau khi phát hiện hoạt động đầu vào của người dùng, ứng dụng sẽ tạo một mã thông báo phiên mới, "Token A".
  3. Khi loại người dùng, API đưa ra yêu cầu tự động hoàn thành vài ký tự, hiển thị một danh sách kết quả tiềm năng mới cho từng ký tự:
    "P"
    "Par"
    "Paris,"
    "Paris, Fr"
  4. Khi người dùng lựa chọn:
    • Tất cả các yêu cầu phát sinh từ truy vấn đều được nhóm và thêm vào phiên hoạt động do "Token A" thể hiện dưới dạng một yêu cầu.
    • Lựa chọn của người dùng được tính là yêu cầu Thông tin chi tiết về địa điểm và được thêm vào phiên hoạt động do "Token A"
  5. Phiên hoạt động sẽ kết thúc và ứng dụng sẽ hủy "Token A".

Để biết thêm thông tin về cách tính phí cho các yêu cầu tự động hoàn thành, hãy xem phần Sử dụng và thanh toán.

Tạo mã thông báo phiên

Để tạo mã thông báo phiên, hãy gọi AutocompleteSessionToken.newInstance().