Si realizas varias operaciones, el tiempo que se tarda en enviar y recibir todos esos mensajes HTTP puede hacer que tu app sea lenta y no responda. Con las solicitudes por lotes, puedes hacer que el servidor realice varias operaciones con una sola solicitud HTTP. La idea básica es que crees un feed de contactos y agregues una entrada para cada operación que quieras realizar.
Las solicitudes por lotes se limitan a 100 operaciones a la vez. Puedes encontrar más información sobre las operaciones por lotes en Procesamiento por lotes en el Protocolo de datos de Google. Los cambios pueden tardar hasta 24 horas en reflejarse en el autocompletado de direcciones de correo electrónico y en el administrador de contactos.
En la siguiente muestra de código, se muestra una solicitud por lotes que crea 2 contactos compartidos. Sin embargo, también puedes usar una solicitud por lotes para consultar, actualizar y borrar contactos. Las entradas de actualización y eliminación requieren un vínculo de edición para que funcione la concurrencia optimista.
<?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>
Reemplaza lo siguiente:
FIRST_NAME
: Es el nombre de pila del contacto compartido, por ejemplo, Alex.LAST_NAME
: El apellido del contacto compartido, por ejemplo, Kim.EMAIL_ADDRESS
: Es la dirección de correo electrónico preferida del contacto compartido, por ejemplo, alk@gmail.com.