Ошибка пакетного удаления фида Google API 500 - PullRequest
0 голосов
/ 24 мая 2018

Я хочу удалить список контактов с фидами Google API.

Я генерирую следующее тело XML:

<?xml version="1.0"?>
<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>delete</batch:id>
    <batch:operation type="delete"/>
    <id>http://www.google.com/m8/feeds/contacts/<email>/base/c001f30f8a96bd</id>
  </entry>
  <entry>
    <batch:id>delete</batch:id>
    <batch:operation type="delete"/>
    <id>http://www.google.com/m8/feeds/contacts/<email>/base/13112ef0ace9063</id>
  </entry>
</feed>

, после этого я вызываю Google_Http_Request

$req = new \Google_Http_Request('https://www.google.com/m8/feeds/contacts/default/full/batch/');
$req->setRequestHeaders(array('content-type' => 'application/atom+xml; charset=UTF-8; type=feed'));
$req->setRequestMethod('DELETE');
$req->setPostBody($myXML);

Google отправил мне ошибку 500.

Я не знаю, где моя проблема.У кого-нибудь есть идея?

Большое спасибо,

1 Ответ

0 голосов
/ 24 мая 2018

Я решил проблему, благодаря @ Morfinismo.

  • Я изменил метод «УДАЛИТЬ» на «POST»
  • Я добавил «If-Match: *» взапрос заголовка
  • Я заменил 'id' на 'editURL'

Вот и все.

...