バッチ オペレーションの実行

複数のオペレーションを実行している場合、これらの HTTP メッセージをすべて送受信するのに時間がかかるため、アプリの動作が遅くなり、応答しなくなることがあります。バッチ リクエストを使用すると、1 つの HTTP リクエストでサーバーに複数のオペレーションを実行させることができます。基本的な考え方は、連絡先フィードを作成して、実行する各オペレーションのエントリを追加することです。

バッチ リクエストは、一度に 100 件までに制限されています。バッチ オペレーションについて詳しくは、Google Data Protocol のバッチ処理をご覧ください。メールアドレスのオートコンプリートと連絡先管理ツールに変更が反映されるまでに、最長で 24 時間ほどかかることがあります。

次のコードサンプルは、2 つの共有連絡先を作成するバッチ リクエストを示しています。ただし、バッチ リクエストを使用して連絡先のクエリ、更新、削除を行うこともできます。更新エントリと削除エントリが機能するためには、オプティミスティック同時実行のための編集リンクが必要です。

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

以下を置き換えます。

  • FIRST_NAME: 共有連絡先の名(例: Alex)。
  • LAST_NAME: 共有の連絡先の姓(例: Kim)。
  • EMAIL_ADDRESS: 共有連絡先の優先メールアドレス(例: alk@gmail.com)。