0

接触操作に関しては、Google CardDAV API Developer's Guideが非常に簡潔です。新しい連絡先を挿入する方法に関する唯一のヒントは次のとおりです。

クライアント アプリケーションは、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

また、必ず OAuth2.0 スコープに CARDDAV API へのアクセスを含めてください: https://www.googleapis.com/auth/carddav

これにより、「アクセス許可が不十分です」というエラーが発生していることを理解するのに永遠にかかりました。

于 2015-04-16T16:05:32.843 に答える
0

このような URL を使用しようとしましたか? https://www.googleapis.com/carddav/v1/principals/foo.bar@gmail.com/lists/default/ CARD_NAME.vcf

于 2014-06-27T15:08:21.630 に答える
0

POST ではなく、PUT を実行します。このような:

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 に答える