如何使用Google API Java客户端对联系人进行部分更新?
我正在使用轻量级Google API Java客户端修改联系人 有一些API示例显示了如何进行部分更新(即通过HTTP补丁),但Google Contacts似乎不支持该补丁。这些文件还规定,通过PUT完成的联系人更新需要包括有关联系人的完整信息,因为PUT请求中遗漏的任何现有数据都将从联系人中删除 那么,读取联系人、修改联系人数据和更新联系人的最简单步骤是什么?客户端API有一个很好的如何使用Google API Java客户端对联系人进行部分更新?,java,android,google-api-java-client,Java,Android,Google Api Java Client,我正在使用轻量级Google API Java客户端修改联系人 有一些API示例显示了如何进行部分更新(即通过HTTP补丁),但Google Contacts似乎不支持该补丁。这些文件还规定,通过PUT完成的联系人更新需要包括有关联系人的完整信息,因为PUT请求中遗漏的任何现有数据都将从联系人中删除 那么,读取联系人、修改联系人数据和更新联系人的最简单步骤是什么?客户端API有一个很好的AtomParser,它从HTTP GET请求获取响应并填充我的类中的成员,但是除非我的类包含联系人可能拥有的
AtomParser
,它从HTTP GET请求获取响应并填充我的类中的成员,但是除非我的类包含联系人可能拥有的所有可能字段,否则我可能不会在HTTP PUT期间读入所有数据并删除数据
我唯一的猜测是,我将不得不跳过所有很酷的AtomParser巫术,只需使用一个普通的旧XML解析器来读取传入的提要,提取我需要的信息,然后对其执行HTTP操作。但考虑到API客户端的所有功能,这似乎有点荒谬。有更好的办法吗
我暗暗希望有一个与此相当的:
HttpRequest request = transport.buildPatchRequest();
request.setUrl(getEditLink());
AtomPatchRelativeToOriginalContent content =
new AtomPatchRelativeToOriginalContent();
content.namespaceDictionary = Namespace.DICTIONARY;
content.originalEntry = originalEntry;
content.patchedEntry = modifiedEntry;
request.content = content;
return RedirectHandler.execute(request).parseAs(getClass());
这正是设计的目的:它存储应用程序中未使用的任意XML,以便安全地使用PUT方法。只需在数据模型类中扩展它。在中可以找到GenericXml的一个很好的示例。他们还讨论了GenericXml。如果对你不起作用,请告诉我
充分披露:我是该项目的所有者。哇,亚尼夫本人!很高兴在堆栈溢出上看到您。顺便问一下,对于这样的问题,你会建议什么支持论坛?(或者你经常出现堆栈溢出?)顺便说一句,工作起来很有魅力。你真是个天才!谢谢你的图书馆,谢谢。很高兴看到对图书馆如此热情!堆栈溢出是一个很好的论坛。或者,您可以使用googlegroup()。另请参见支持页面()。@Arjan:True,尽管这些帖子通常不到5票,但令人惊讶的是已经足够了。由于用户将完全忘记这一点,除非帖子最终被迁移,我想一点提示可能也会有所帮助。不过我明白你的意思。