php
  • google-contacts
  • google-client
  • 2017-02-07 18 views 0 likes 
    0

    вставить с PHP apiclient партии и дублировать записи в Google Contactsgooglecontacts апи дублировать когда вставка партии контакты

    Я использую:

    $contactXML = 
    "<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'> 
        <entry> 
        <batch:id>create</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:fullName>Elizabeth Bennet</gd:fullName> 
         <gd:givenName>Elizabeth</gd:givenName> 
         <gd:familyName>Bennet</gd:familyName> 
        </gd:name> 
        <gd:email rel='http://schemas.google.com/g/2005#home' address='[email protected]' primary='true'/> 
        </entry> 
        <entry> 
        <batch:id>create2</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:fullName>maria pomez</gd:fullName> 
         <gd:givenName>maria</gd:givenName> 
         <gd:familyName>pomez</gd:familyName> 
        </gd:name> 
        <gd:email rel='http://schemas.google.com/g/2005#home' address='[email protected]' primary='true'/> 
        </entry> 
    
    </feed> 
    "; 
    
    $headers = array(
        'Host' => 'www.google.com', 
        'Gdata-version' => '3.0', 
        'Content-length' => strlen($contactXML), 
        'Content-type' => 'application/atom+xml', 
        'alt' => 'json', 
        'CURLOPT_SSLVERSION' => '3' 
    ); 
    
    $url = 'https://www.google.com/m8/feeds/contacts/default/full/batch'; 
    
    $resultado = $httpClient->post($url, ['headers' => $headers, 'body' => $contactXML]); 
    

    Но контакты дублируется.

    Странно, когда вы используете xdebug для отладки кода, а не для дублирования контактов.

    Я видел сетевые петиции разработчиков навигационных инструментов и делал только одно ходатайство о странице.

    Может ли кто-нибудь мне помочь?

    Thx

    Извините за мой английский

    +0

    Поскольку это PHP, возможно браузер послал двух запросов? API-интерфейс «Контакты» не имеет возможности различать повторяющиеся запросы как один и тот же дублированный запрос и поэтому будет создавать одни и те же контакты снова и снова, если один и тот же запрос будет воспроизведен. –

    +0

    Я делаю только один запрос – Chus

    +0

    Как я могу проверить, если сделать два запроса? – Chus

    ответ

    0

    Была исправлена ​​путем обновления googleclient PHP 2.1.1

     Смежные вопросы

    • Нет связанных вопросов^_^