Python - Django - cardav - 如何实现服务器

Python - Django - cardav - How to implement a server

我有一个用 Django 编写的服务器应用程序,它有一个联系人数据库。

我想添加一个 cardav 网络服务,以便在 phone 上共享我的联系人。我做了很多搜索,但我完全迷路了。

我发现一些服务器是 Radical,一些 API 使用文件...但对我没有任何帮助。

我需要在我的服务器中实施一个 API,它将 return 我的 Android 我的数据库中的联系人列表。我应该使用什么输出格式?

谢谢。

您的问题似乎有点笼统,也没有列出您查看了哪些资源以及您迷路的原因。

This presentation is a little old, but shows the fundamentals on how the *DAV protocols work. Building a CardDAV Client 是另一个很好的起点。

CardDAV 本身在 RFC 6352,以及相关的 RFC: WebDAV, WebDAV ACL, 等等

What output format should I use ?

CardDAV 请求和响应使用 WebDAV, 因此 XML。 实际有效载荷是 vCard v3.

如果您正在寻找示例代码: Apple CalendarServer 是用 Python 编写的成熟的 CalDAV/CardDAV 服务器。 Radicale 是另一个,但你已经发现了(更具体地说为什么这对你没有帮助,Radicale 对我来说看起来是一个很好的起点)。

最后:我认为 Android 没有内置 CardDAV 支持。大概您正在使用同步插件?