Place Autocomplete utilizza token di sessione per raggruppare le fasi di query e selezione di una ricerca con completamento automatico dell'utente in una sessione discreta ai fini di fatturazione. La sessione inizia quando l'utente inizia a digitare una query e termina
quando seleziona un luogo e viene effettuata una chiamata ai dettagli del luogo. Ogni sessione può avere più query di completamento automatico, seguite da una selezione di un luogo. Le chiavi API utilizzate per ogni richiesta all'interno di una sessione devono appartenere allo stesso progetto Google Cloud Console. Al termine di una sessione, il token non è più valido; l'app deve generare un nuovo token per ogni sessione. Se il parametro sessiontoken
viene omesso o se riutilizzi un token di sessione, l'addebito per la sessione viene eseguito come se non fosse stato fornito alcun token di sessione (ogni richiesta viene fatturata separatamente).
Ti consigliamo di seguire queste linee guida:
- Utilizza i token di sessione per tutte le sessioni di completamento automatico.
- Genera un nuovo token per ogni sessione.
- Assicurati che le chiavi API utilizzate per tutte le richieste di completamento automatico di luoghi e dettagli dei luoghi all'interno di una sessione appartengano allo stesso progetto Google Cloud Console.
- Assicurati di passare un token di sessione univoco per ogni nuova sessione. L'utilizzo dello stesso token per più di una sessione comporta la fatturazione singola di ogni richiesta.
Se vuoi, puoi omettere il token della sessione di completamento automatico da una richiesta. Se il token di sessione viene omesso, ogni richiesta viene fatturata separatamente, attivando il completamento automatico - per richiesta SKU. Se riutilizzi un token di sessione, la sessione viene considerata non valida e le richieste vengono addebitate come se non fosse stato fornito un token di sessione.
Esempio
Man mano che l'utente digita una query, viene chiamata una richiesta di completamento automatico a intervalli di alcune sequenze di tasti (non per carattere) e viene restituito un elenco di possibili risultati. Quando l'utente effettua una selezione dall'elenco dei risultati, la selezione viene conteggiata come una richiesta e tutte le richieste effettuate durante la ricerca vengono raggruppate e conteggiate come un'unica richiesta. Se l'utente seleziona un luogo, la query di ricerca è disponibile senza costi aggiuntivi e viene addebitata solo la richiesta di dati dei luoghi. Se l'utente non effettua una selezione entro pochi minuti dall'inizio della sessione, viene addebitata solo la query di ricerca.
Esaminiamo questo flusso di eventi dal punto di vista di un'app.
- Un utente inizia a digitare una query per cercare "Parigi, Francia".
- Al rilevamento dell'input dell'utente, l'app crea un nuovo token di sessione, "Token A".
- Poiché i tipi di utenti, l'API effettua una richiesta di completamento automatico a intervalli di alcuni caratteri, mostrando un nuovo elenco di risultati potenziali per ciascuno:
"P"
"Par"
"Paris,"
"Paris, Fr"
- Quando l'utente effettua una selezione:
- Tutte le richieste derivanti dalla query vengono raggruppate e aggiunte alla sessione rappresentata da "Token A", come una singola richiesta.
- La selezione dell'utente viene conteggiata come una richiesta di Dettaglio luogo e aggiunta alla sessione rappresentata da "Token A".
- La sessione si è conclusa e l'app ignora "Token A".
Per ulteriori informazioni sulle modalità di fatturazione delle richieste di completamento automatico, consulta la pagina Utilizzo e fatturazione.
Crea token di sessione
Per creare un token di sessione, chiama
AutocompleteSessionToken.newInstance()
.