我们有一个Java Spring应用程序,数据库中有很多联系人。现在,我们想通过CardDAV提供这些联系人,以便通过外部设备进行访问。
据我了解,CardDAV使用的是“知名”协议。这意味着它将查找http://mydomain.com/.well-known/carddav
这可能是一个问题,因为我们有一个Tomcat服务器正在运行,并且有多个应用程序在其上运行,并且每个应用程序都应提供CardDAV服务器。这意味着,我们的网址如下所示:http://mydomain.com/appOne/
http://mydomain.com/appTwo/
http://mydomain.com/appThree/
每个应用程序都有一组完全不同的用户和数据。尽管每个CardDAV存储库都必须查找自己的数据源,并且必须使用自己的身份验证机制。
问题当然是:如何在一个域中获得多个不同的CardDAV服务器?
顺便说一句:是否有关于CardDAV的真实信息(不仅仅是WebDAV还是一样?!)?
例如,我找不到有关多个存储库/访问权限限制的任何信息。也许我想拥有一台具有多个不同用户的CardDAV服务器,其中每个用户都有一个自己的通讯录,并且有一些公用通讯录。
最佳答案
实际上,iOS仅支持知名。如果iOS设备无法通过知名设备进行连接,它将允许用户输入完整的主体地址,但是只有在向用户显示错误消息后,大多数用户才会放弃。
但是,重定向将在身份验证之后发生,因此只要您能够在根上进行身份验证(例如,使用包含子站点的用户名方案,例如“ appOne:brad”),那么您就应该能够进行身份验证。或者,如上所述,仅使用子域。