API контакта Google возвращает ошибку "Недопустимый документ XML" и не сохраняется в моих контактах
Я использую HTTP POST для создания нового контакта, но контакты сохраняются в "Другие контакты".
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<entry>
<category scheme="https://schemas.google.com/g/2005#kind" term="https://schemas.google.com/contact/2008#contact" />
<title>test Sun 6:00pm Ashwin P</title>
<gd:name>
<gd:fullName>test Sun 6:00pm Ashwin P</gd:fullName>
</gd:name>
<gd:phoneNumber label="Father">+6589822222</gd:phoneNumber>
<gContact:groupMembershipInfo deleted="false" href="https://www.google.com/m8/feeds/groups/demo@gmail.com/base/6" />
</entry>
Другое тело запроса:
<atom:entry xmlns:atom="http://www.w3.org/2005/Atom" xmlns:gd="http://schemas.google.com/g/2005">
<atom:category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/contact/2008#contact"/>
<gd:name>
<gd:givenName>test Sun 6:00pm Ashwin P</gd:givenName>
<gd:familyName>test Sun 6:00pm Ashwin P</gd:familyName>
<gd:fullName>test Sun 6:00pm Ashwin P</gd:fullName>
</gd:name>
<atom:content type="text">Notes</atom:content>
<gd:email rel="http://schemas.google.com/g/2005#work" primary="true" address="demo@gmail.com" displayName="test Sun 6:00pm Ashwin P"/>
<gd:email rel="http://schemas.google.com/g/2005#home" address="demo@gmail.com"/>
<gd:phoneNumber rel="http://schemas.google.com/g/2005#home" primary="true">+6589822222</gd:phoneNumber>
<gContact:groupMembershipInfo deleted="false" href="https://www.google.com/m8/feeds/groups/paresh.tps@gmail.com/base/6"/>
</atom:entry>
Единственное решение, которое я нашел, чтобы вставить контакт в "Мои контакты", это добавить этот тег в запрос XML:
<gContact:groupMembershipInfo href='http://www.google.com/m8/feeds/groups/demo@gmail.com/base/6'/>
Ошибка:
REXML::ParseException
The document "<?xml version='1.0'?>\n" does not have a valid root
Ошибка ответа
response.read_body
"Invalid XML Document."
Спасибо
0 ответов
Просто добавил пространства имен, и это кажется хорошим
Здесь нужно заменить
<entry>
с
<entry
xmlns:gd = "http://www.w3.org/TR/html4/"
xmlns:gContact = "http://www.w3.org/TR/html4/">