Menu

#525 Doesn't return D:resourcetype

v4.3.0
closed
nobody
Caldav (160)
5
2013-07-09
2013-05-28
Anonymous
No

The caldav server should return a resource type as definied by the webdav spec.
See: http://www.webdav.org/specs/rfc4437.xml
Search for: resourcetype

Example request & response:

Request:
PROPFIND /[...]
Depth: 0

<?xml version="1.0" encoding="UTF-8"?>
<D:propfind xmlns:D="DAV:">
<D:allprop/>
</D:propfind>

Response:
<?xml version='1.0' encoding='UTF-8'?>
<D:multistatus xmlns:D="DAV:">
<D:response>
<D:href>/[...]</D:href>
<D:propstat>
<D:status>HTTP/1.1 200 OK</D:status>
<D:prop>
<D:getcontenttype>text/calendar; component=vevent</D:getcontenttype>
<D:displayname>Calendar</D:displayname>
<D:resourcetype>
<D:collection />
<C:calendar xmlns:C="urn:ietf:params:xml:ns:caldav" />
</D:resourcetype>
<CS:getctag xmlns:CS="http://calendarserver.org/ns/">63414112150</CS:getctag>
</D:prop>
</D:propstat>
</D:response>
</D:multistatus>

Where <C:calendar xmlns:C="urn:ietf:params:xml:ns:caldav" /> is the important part!

Discussion

  • Anonymous

    Anonymous - 2013-05-28

    In detail: The request I actually use looks like this:

    <D:propfind xmlns:D="DAV:">
    <D:prop>
    <D:quota-available-bytes />
    <D:quota-used-bytes />
    <D:current-user-privilege-set />
    <D:prop />
    <D:resourcetype />
    <D:displayname />
    <D:owner />
    <S:xmpp-server xmlns:S="http://calendarserver.org/ns/" />
    <S:xmpp-uri xmlns:S="http://calendarserver.org/ns/" />
    <S:getctag xmlns:S="http://calendarserver.org/ns/" />
    <S:source xmlns:S="http://calendarserver.org/ns/" />
    <S:subscribed-strip-alarms xmlns:S="http://calendarserver.org/ns/" />
    <S:subscribed-strip-attachments xmlns:S="http://calendarserver.org/ns/" />
    <S:subscribed-strip-todos xmlns:S="http://calendarserver.org/ns/" />
    <S:refreshrate xmlns:S="http://calendarserver.org/ns/" />
    <S:push-transports xmlns:S="http://calendarserver.org/ns/" />
    <S:pushkey xmlns:S="http://calendarserver.org/ns/" />
    </D:prop>
    </D:propfind>

    What I'm getting back is:
    <?xml version="1.0" encoding="UTF-8"?>
    <D:multistatus xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav" xmlns:E="urn:ietf:params:xml:ns:carddav">
    <D:response>
    <D:href>/users/meme@meme.local/calendar/</D:href>
    <D:propstat>
    <D:prop>
    <D:current-user-privilege-set>
    <D:privilege>
    <D:read />
    <D:write />
    </D:privilege>
    </D:current-user-privilege-set>
    </D:prop>
    <D:status>HTTP/1.1 200 OK</D:status>
    </D:propstat>
    </D:response>
    </D:multistatus>

    What I'm realy missing is: resourcetype and getctag!!

     
  • Anonymous

    Anonymous - 2013-05-28

    Ok. I rearranged the request and now it's working. Maybe you check why it doesn't work, when it the order of the last post

     
  • Mickael Guessant

    It's the inner <d:prop> tag that breaks DavMail parser</d:prop>

     

Log in to post a comment.

MongoDB Logo MongoDB