0

Google CardDAV API 开发人员指南在联系操作方面非常简短。关于如何插入新联系人的唯一提示是:

客户端应用程序使用 VCard 3.0 格式的新联系人发出 POST 请求。响应将包含新联系人的 ID。

这是我发出的请求,但我得到的响应是 400 Bad Request:

POST https://www.googleapis.com/carddav/v1/principals/foo.bar@gmail.com/lists/default/ HTTP/1.1
Authorization: Bearer ya29.foobar
Content-Type: text/vcard; charset="UTF-8"
Host: www.googleapis.com
Content-Length: 77
Expect: 100-continue
Connection: Keep-Alive

BEGIN:VCARD
VERSION:3.0
FN:Foo Bar
UID:abc-def-fez-1234546578
END:VCARD

有人知道我在这里想念什么吗?

4

3 回答 3

0

您是否尝试过使用这样的网址?https://www.googleapis.com/carddav/v1/principals/foo.bar@gmail.com/lists/default/ CARD_NAME.vcf

于 2014-06-27T15:08:21.630 回答
0

还要确保在您的 OAuth2.0 范围中包含对 CARDDAV API 的访问权限:https: //www.googleapis.com/auth/carddav

我花了很长时间才弄清楚我收到了“权限不足”错误。

于 2015-04-16T16:05:32.843 回答
0

做一个 PUT,而不是一个 POST。像这样:

PUT /carddav/v1/principals/foo.bar@gmail.com/lists/default/DEADBEEF.vcf
If-None-Match: *
Authorization: ...
Host: www.googleapis.com
Content-Type: text/vcard; charset="UTF-8"
Expect: 100-continue

BEGIN:VCARD
VERSION:3.0
PRODID:-//YouYou//Windows//EN
FN:Foo Bar
N:Bar;Foo;;;
UID:DEADBEEF
END:VCARD
于 2014-06-27T17:31:47.990 回答