Wykonywanie operacji wsadowych

Jeśli wykonujesz kilka operacji, czas potrzebny na wysyłanie i odbieranie wszystkich tych komunikatów HTTP może spowodować spowolnienie działania aplikacji i utratę jej responsywności. Za pomocą żądań zbiorczych możesz zlecić serwerowi wykonanie wielu operacji za pomocą pojedynczego żądania HTTP. Zasada jest taka, że tworzysz plik danych z kontaktami i dodajesz wpis dla każdej operacji, którą chcesz wykonać.

Liczba operacji w żądaniach zbiorczych jest ograniczona do 100 jednostek. Więcej informacji o operacjach zbiorczych znajdziesz w artykule Przetwarzanie zbiorcze w Google Data Protocol. Uwzględnienie tych zmian w autouzupełnianiu adresów e-mail i na karcie Kontakt może potrwać do 24 godzin.

Poniższy przykładowy kod pokazuje żądanie zbiorcze, które tworzy 2 wspólne kontakty. Można też użyć żądania zbiorczego, aby wyszukiwać, aktualizować i usuwać kontakty. Aby można było aktualizować i usuwać wpisy, musisz mieć link do edycji, który umożliwia optymistyczną współbieżność.

<?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>

Zastąp następujące elementy:

  • FIRST_NAME: imię udostępnionego kontaktu, np. Alex.
  • LAST_NAME: nazwisko udostępnionego kontaktu, np. Kim.
  • EMAIL_ADDRESS: preferowany adres e-mail udostępnionego kontaktu, np. alk@gmail.com.