【问题标题】:number-of-matches-within-limits requesting CardDav server请求 CardDav 服务器的限制内匹配数
【发布时间】:2014-09-22 14:16:47
【问题描述】:

我最近尝试从 iCloud CardDav 服务器读取大量 VCard。但是我意识到我请求的第 5000 个 vCard 是有限制的。

这是我的报告请求:

<?xml version="1.0" encoding="utf-8" ?>
   <C:addressbook-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav">
   <C:filter>
      <C:prop-filter name="X-ADDRESSBOOKSERVER-KIND" test="anyof">
         <C:is-not-defined />
         <C:text-match collation="i;unicode-casemap" match-type="equals" negate-condition="yes">group</C:text-match>
      </C:prop-filter>
   </C:filter>
</C:addressbook-query>

这是服务器答案的结尾:

<response>
   <href>/872816606/carddavhome/card/</href>
   <status>HTTP/1.1 507 OK</status>
   <error><number-of-matches-within-limits/></error>
</response>

有没有办法查询下一页?

提前致谢。

【问题讨论】:

    标签: icloud carddav


    【解决方案1】:

    CardDAV 本身并不提供分页机制。另一方面,WebDAV Sync (https://www.rfc-editor.org/rfc/rfc6578) 确实提供了分页,尽管并非所有服务器实现都支持分页。

    现在,如果了解您的查询,您几乎是在询问集合中的所有联系人,组除外。除非您有大量组,否则您可能希望在客户端过滤它们,在这种情况下,您可以使用常规 PROPFIND(或 WebDAV Sync REPORT),然后是一系列 CarDAV multiget REPORT,这是大多数客户端做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-17
      • 1970-01-01
      相关资源
      最近更新 更多