如何解决Caldav 发现从 iOS 到 caldav 服务器
根据一些在线文章,iOS 会针对发现的前两部分发出 PROPFIND 请求,然后发出 OPTIONS 请求。
我在 iis 上创建了一个带有 aspnetcore api 的 caldav 服务器。我已经实现了中间件来捕获所有传入的请求和响应。
我的api会成功从.well-kNown/caldav
请求重新路由,请求Authentication,然后响应第一个PROPFIND。响应后,iOS 继续尝试向不同的 URL 发出相同的 PROPFIND 请求。我的回答肯定有问题,但我只是没有看到。
我已经仔细阅读了 dav/caldav 规范/RFC。等
我找到了这两篇文章: Caldav Discovery Caldav Handshake
Similar question,but I do not get OPTIONS request
我的回答有什么问题?
iOS PROPFIND 请求
<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<A:current-user-principal/>
<A:principal-URL/>
<A:resourcetype/>
</A:prop>
</A:propfind>
服务器响应和标头:
Cache-Control no-cache,no-store Pragma 无缓存 内容类型应用程序/xml
<?xml version="1.0" encoding="UTF-8"?>
<multistatus xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav" xmlns:CS="http://calendarserver.org/ns/">
<D:response>
<D:href>/calendars/</D:href>
<D:propstat>
<D:status>HTTP/1.1 200 OK</D:status>
<D:prop>
<D:current-user-principal>
<D:href>/calendars/user@user.com/</D:href>
</D:current-user-principal>
<D:resourcetype>
<D:collection />
</D:resourcetype>
</D:prop>
</D:propstat>
</D:response>
IIS 请求日志:
1.1.1.1,-,5/16/2021,23:49:12,W3SVC8,myserver,2.2.2.2,109,479,314,308,PROPFIND,/.well-kNown/caldav,1.1.1.1,125,471,453,401,/calendars/,93,538,1829,207,78,1256,282,404,/,1267,/principals/,1334,62,1292,/calendar/dav/user@user.com/user/,
在第三次请求之后,我报告了一个响应,但看起来 iOS 仍在尝试使用相同的 PROPFIND 请求的其他一些 URL。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。