首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sabredav carddav不能在ios上工作,只能在android上工作

sabredav carddav不能在ios上工作,只能在android上工作
EN

Stack Overflow用户
提问于 2013-03-22 17:50:11
回答 1查看 1.1K关注 0票数 0

我正在将sabredav集成到我的app应用程序中,我的应用程序-> sabredab之间的连接似乎很好。使用浏览器,我可以访问所有需要的vcards。

当我使用url时在Android上

代码语言:javascript
复制
example.org/sabredavcontroller/index/addressbooks/principalID/addressbookID

它完全同步

然而,在ios (6)上,它位于example.org/.well-known/carddav

我已将其重定向到example.org/sabredavcontroller/index/,但随后它什么也不做,并尝试其他urls,这些urls也不起作用并出错。

这是ios尝试为carddav设置帐户时的访问日志:

代码语言:javascript
复制
projectnexys.com:80 192.168.125.24 - - [22/Mar/2013:10:41:58 +0100] "PROPFIND /.well-known/carddav HTTP/1.1" 302 574 "-" "iOS/6.1.2 (10B146) Preferences/1.0"
projectnexys.com:80 192.168.125.24 - - [22/Mar/2013:10:41:59 +0100] "PROPFIND /sabredavcontroller/index/ HTTP/1.1" 401 985 "-" "iOS/6.1.2  (10B146) Preferences/1.0"
projectnexys.com:80 192.168.125.24 - member2@bla.bla [22/Mar/2013:10:41:59 +0100] "PROPFIND /sabredavcontroller/index/ HTTP/1.1" 207 1423 "-" "iOS/6.1.2 (10B146) Preferences/1.0"
projectnexys.com:80 192.168.125.24 - - [22/Mar/2013:10:42:00 +0100] "PROPFIND / HTTP/1.1" 302 818 "-" "iOS/6.1.2 (10B146) Preferences/1.0"
projectnexys.com:80 192.168.125.24 - - [22/Mar/2013:10:42:01 +0100] "PROPFIND /account HTTP/1.1" 200 2107 "-" "iOS/6.1.2 (10B146) Preferences/1.0"
projectnexys.com:80 192.168.125.24 - - [22/Mar/2013:10:42:01 +0100] "PROPFIND /principals/ HTTP/1.1" 404 890 "-" "iOS/6.1.2 (10B146) Preferences/1.0"

(为了澄清:第一行是通过重定向找到sabredav的根: 301第二行是对根的请求,但它需要用户名/pw,第三行与第二行相同,但需要身份验证,然后它放弃此url并尝试其他选项)

第三行的结果是,将curl与以下命令一起使用:

代码语言:javascript
复制
curl --header "Content-Type: text/xml" -u "member2@bla.bla:bla" --request PROPFIND  projectnexys.com/sabredavcontroller/index/ | xmllint --format -

-

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns" xmlns:card="urn:ietf:params:xml:ns:carddav">
  <d:response>
    <d:href>/sabredavcontroller/index/</d:href>
    <d:propstat>
      <d:prop>
        <d:getlastmodified>Fri, 22 Mar 2013 09:36:52 GMT</d:getlastmodified>
        <d:resourcetype>
          <d:collection/>
        </d:resourcetype>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
  <d:response>
    <d:href>/sabredavcontroller/index/principals/</d:href>
    <d:propstat>
      <d:prop>
        <d:getlastmodified>Fri, 22 Mar 2013 09:36:52 GMT</d:getlastmodified>
        <d:resourcetype>
          <d:collection/>
        </d:resourcetype>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
  <d:response>
    <d:href>/sabredavcontroller/index/addressbooks/</d:href>
    <d:propstat>
      <d:prop>
        <d:getlastmodified>Fri, 22 Mar 2013 09:36:52 GMT</d:getlastmodified>
        <d:resourcetype>
          <d:collection/>
        </d:resourcetype>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
</d:multistatus>

谁能给我一些提示,告诉我可能会出什么问题?

Ps。我正在使用SabreDAV http://sabre.io/,但由于声誉原因,我还不能创建新标签

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-27 19:00:21

您缺少ACL插件。CardDAV需要它!

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

https://stackoverflow.com/questions/15567230

复制
相关文章

相似问题

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