【问题标题】:How to identify which calendar is my default calendar at iCloud.com如何识别哪个日历是我在 iCloud.com 上的默认日历
【发布时间】:2017-07-14 10:55:41
【问题描述】:
<d:propfind xmlns:d='DAV:' xmlns:cs='{0}' xmlns:c='urn:ietf:params:xml:ns:caldav'>
                                              <d:prop>
                                                 <d:resourcetype />
                                                 <d:displayname />
                                                 <cs:getctag />
                                                 <c:supported-calendar-component-set />
                                                 <d:current-user-privilege-set/>
                                                <d:calendar-access />
                                                <c:schedule-default-calendar-URL />
                                              </d:prop>
                                        </d:propfind>

以上是我获取所有日历的请求。 阅读回复后如何区分默认日历和其他日历。对于每个日历,以下是常见的响应-:

<propstat><prop><calendar-access /><schedule-default-calendar-URL xmlns="urn:ietf:params:xml:ns:caldav" /></prop><status>HTTP/1.1 404 Not Found</status></propstat>

【问题讨论】:

    标签: icloud icalendar webdav caldav


    【解决方案1】:

    根据RFC6638 4.3,你应该得到一个值

    schedule-default-calendar-URL

    收件箱集合上的属性。而且,那是默认日历;-)

    【讨论】:

    • 是的,但我没有收到任何日历。
    • 以下是我为每个日历得到的 -: HTTP/1.1 404 Not Found
    • 我错过了什么吗?上面发布的问题是我的示例请求。谢谢!
    • 嗯,你的请求有xmlns:cs='{0}',这不是你想要的。 Wrt URL 属性,这不是在日历上定义的,它是在收件箱集合上定义的。因此,您在日历上获得属性 404 是完全正常的。也许向我们展示您从服务器收到的完整响应(将其添加到您的问题中)。
    • 我忘了提到我在使用 string.Format() 的代码中将 {0} 替换为“calendarserver.org/ns”。这是一个拼写错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多