首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CardDAV从iCloud获取所有联系人

CardDAV从iCloud获取所有联系人
EN

Stack Overflow用户
提问于 2020-03-17 10:44:44
回答 1查看 446关注 0票数 0

我试着从一个iCloud帐户中获取所有联系人.

我先跑:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<d:propfind xmlns:d="DAV:">
    <d:prop>
        <d:current-user-principal/>
    </d:prop>
</d:propfind>

然后我得到/xxxxxxxxxxx/carddavhome/并运行:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<d:propfind xmlns:d="DAV:" xmlns:card="urn:ietf:params:xml:ns:carddav">
    <d:prop>
        <card:addressbook-home-set/>
    </d:prop>
</d:propfind>

这给我URL ,然后我向这个URL发送以下请求:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<d:propfind xmlns:d="DAV:" xmlns:card="urn:ietf:params:xml:ns:carddav">
    <d:prop>
        <d:displayname/>
        <d:resourcetype/>
    </d:prop>
</d:propfind>

我得到了:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<multistatus xmlns="DAV:">
    <response>
        <href>/xxxxxxxxxxx/carddavhome/</href>
        <propstat>
            <prop>
                <resourcetype>
                    <collection/>
                </resourcetype>
            </prop>
            <status>HTTP/1.1 200 OK</status>
        </propstat>

        <propstat>
            <prop>
                <displayname/>
            </prop>
            <status>HTTP/1.1 404 Not Found</status>
        </propstat>
    </response>
</multistatus>

如果我尝试将其运行到URL

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<card:addressbook-query xmlns:d="DAV:" xmlns:card="urn:ietf:params:xml:ns:carddav">
    <d:prop>
        <d:getetag/>
        <card:address-data/>
    </d:prop>
</card:addressbook-query>

我得到:格式不当遇到的XML,意外的根节点

我犯了什么错?前两个查询工作并给出预期的结果,第三个查询应该给我一个通讯录和组的列表,第四个查询应该给我所有的VCards。

EN

回答 1

Stack Overflow用户

发布于 2020-03-19 07:18:34

对于第一个问题,您没有提供整个HTTP请求,但我怀疑您缺少一个值为1的深度标头:

代码语言:javascript
复制
Depth: 1

对于第二个问题,xml负载似乎没有任何问题。另一方面,您的url似乎不正确,因为它至少缺少了表示集合的结束斜杠(一些*DAV服务器对其更严格)。希望解决第一个问题将允许您在进行地址簿查询时使用正确的url。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60720728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档