Il completamento automatico dei luoghi utilizza i token di sessione per raggruppare le fasi di query e selezione di una ricerca di completamento automatico dell'utente in una sessione distinta a 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 a Dettagli dei luoghi. Ogni sessione può avere più query di completamento automatico, seguite dalla selezione di un luogo. Le chiavi API utilizzate per ogni richiesta all'interno di una sessione devono appartenere allo stesso progetto della console Google Cloud. 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 sessione, la sessione viene addebitata come se non fosse stato fornito alcun token sessione (ogni richiesta viene fatturata separatamente).
Ti consigliamo di seguire le seguenti 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 dei luoghi e di dettagli dei luoghi all'interno di una sessione appartengano allo stesso progetto della console Google Cloud.
- Assicurati di passare un token di sessione univoco per ogni nuova sessione. L'utilizzo dello stesso token per più sessioni comporterà l'addebito di ogni richiesta singolarmente.
Se vuoi, puoi omettere il token di sessione di completamento automatico da una richiesta. Se il token sessione viene omesso, ogni richiesta viene fatturata separatamente, attivando lo SKU Autocomplete - Per richiesta. Se riutilizzi un token della sessione, la sessione viene considerata non valida e le richieste vengono addebitate come se non fosse stato fornito alcun token della sessione.
Esempio
Man mano che l'utente digita una query, viene chiamata una richiesta di completamento automatico ogni alcune tastiere (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 richiesta e tutte le richieste effettuate durante la ricerca vengono raggruppate e conteggiate come una singola richiesta. Se l'utente seleziona un luogo, la query di ricerca è disponibile senza costi e viene addebitato solo il costo della richiesta di dati del luogo. Se l'utente non effettua una selezione entro pochi minuti dall'inizio della sessione, viene addebitato solo il costo della 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".
- Man mano che l'utente digita, l'API invia una richiesta di completamento automatico ogni pochi caratteri, visualizzando un nuovo elenco di potenziali risultati per ciascuno:
"P"
"Par"
"Parigi"
"Parigi, Francia"
- Quando l'utente effettua una selezione:
- Tutte le richieste risultanti dalla query vengono raggruppate e aggiunte alla sessione rappresentata da "Token A", come una singola richiesta.
- La selezione dell'utente viene conteggiata come richiesta di dettagli sui luoghi e aggiunta alla sessione rappresentata da "Token A".
- La sessione è conclusa e l'app elimina "Token A".
Per saperne di più su come vengono fatturate le richieste di completamento automatico, consulta Utilizzo e fatturazione.
Crea token di sessione
Per creare un token di sessione, chiama
AutocompleteSessionToken.newInstance()
.