Se esegui diverse operazioni, il tempo necessario per inviare e ricevere tutti questi messaggi HTTP può rendere la tua app lenta e non responsiva. Con le richieste agrupate, puoi chiedere al server di eseguire più operazioni con una singola richiesta HTTP. L'idea di base è creare un feed dei contatti e aggiungere una voce per ogni operazione che vuoi eseguire.
Le richieste batch sono limitate a 100 operazioni alla volta. Puoi trovare maggiori informazioni sulle operazioni batch in Elaborazione batch nel protocollo di dati di Google. Potrebbero essere necessarie fino a 24 ore prima che le modifiche siano visibili nel completamento automatico dell'indirizzo email e nel gestore dei contatti.
Il seguente esempio di codice mostra una richiesta batch che crea 2 contatti condivisi. Tuttavia, puoi utilizzare una richiesta batch anche per eseguire query, aggiornare ed eliminare i contatti. Le voci di aggiornamento ed eliminazione richiedono un link di modifica per il funzionamento della concorrenza ottimistica.
<?xml version='1.0' encoding='UTF-8'?> <feed xmlns='http://www.w3.org/2005/Atom' xmlns:gContact='http://schemas.google.com/contact/2008' xmlns:gd='http://schemas.google.com/g/2005' xmlns:batch='http://schemas.google.com/gdata/batch'> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/g/2008#contact' /> <entry> <batch:id>1</batch:id> <batch:operation type='insert' /> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/g/2008#contact'/> <gd:name> <gd:givenName>FIRST_NAME</gd:fullName> <gd:familyName>LAST_NAME</gd:fullName> </gd:name> <gd:email rel='http://schemas.google.com/g/2005#home' address='EMAIL_ADDRESS' primary='true'/> </entry> <entry> <batch:id>2</batch:id> <batch:operation type='insert' /> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/g/2008#contact'/> <gd:name> <gd:givenName>FIRST_NAME</gd:fullName> <gd:familyName>LAST_NAME</gd:fullName> </gd:name> <gd:email rel='http://schemas.google.com/g/2005#home' address='EMAIL_ADDRESS' primary='true'/> </entry> </feed>
Sostituisci quanto segue:
FIRST_NAME
: il nome del contatto condiviso, ad esempio Alex.LAST_NAME
: il cognome del contatto condiviso, ad esempio Kim.EMAIL_ADDRESS
: l'indirizzo email preferito del contatto condiviso, ad esempio alk@gmail.com.