Google api Google CardDAV API 403错误

Google api Google CardDAV API 403错误,google-api,http-status-code-403,google-api-client,carddav,Google Api,Http Status Code 403,Google Api Client,Carddav,我一直在尝试使用谷歌的CardDAV API(我已经成功地让CalDAV访问正常工作)。不幸的是,在试图发现用户的当前用户主体时,我一直收到403错误。FWIW,我已经去了谷歌的开发者控制台并设置了客户端信息,对于CalDAV访问来说,它似乎工作得非常好 以下是CardDAV的HTTP流量片段: PROPFIND https://www.googleapis.com:443/.well-known/carddav/ Depth: 0 Content-Type: text/xml Brief: T

我一直在尝试使用谷歌的CardDAV API(我已经成功地让CalDAV访问正常工作)。不幸的是,在试图发现用户的当前用户主体时,我一直收到403错误。FWIW,我已经去了谷歌的开发者控制台并设置了客户端信息,对于CalDAV访问来说,它似乎工作得非常好

以下是CardDAV的HTTP流量片段:

PROPFIND https://www.googleapis.com:443/.well-known/carddav/
Depth: 0
Content-Type: text/xml
Brief: T
Authorization: Bearer ya29.1.AADtN_UD1CVKpIQPsyB4HzoKVxt4L5kPFXU3GucMTfJmJj9t0pzZqX1i3Xx748Y
<?xml version="1.0" encoding="utf-8"?>
<x0:propfind xmlns:x0="DAV:">
  <x0:prop>
    <x0:current-user-principal />
    <x0:principal-URL />
    <x0:resourcetype />
  </x0:prop>
</x0:propfind>

vvvvvvvvvvvv

HTTP PROPFIND Status(403) Forbidden
<?xml version="1.0" encoding="UTF-8"?>
<errors xmlns="http://schemas.google.com/g/2005">
 <error>
  <domain>GData</domain>
  <code>insufficientPermissions</code>
  <internalReason>Insufficient Permission</internalReason>
 </error>
</errors>
如果有人对为什么会发生这种情况有所了解,我们将不胜感激


红色

您需要请求访问Google Carddav API,即


我担心这可能还不够,因为即使有了这个许可(以及的许可),我的通讯录也会收到空的报告。真奇怪。甚至在与我的客户取得联系之后。

我今天一直在玩这个,刚刚成功了。 我正在使用两个oauth示波器

我刚用第二个的时候得到了403。 然后在
getetag
上执行深度1
propfind
,然后执行
multiget
以获取
vCard
。 反应非常迅速


p、 使用您正在使用的URL,您还将获得一个http重定向

,感谢您的回复。事实上,我已经通过开发人员的仪表板请求了访问,通过OAuth2承载令牌的证据。所以,当您逃避时,似乎还有另一个导致403错误的原因。是的,但针对哪些域?您需要请求访问正确的域才能使carddav正常工作。。。对我来说,当我请求访问域“”时,我不会再收到403个错误。但清单仍然是空的。可能@davef在这里有右后。你说的“multiget”是指报告地址簿multiget吗?我可以做任何PROPFIND,但ReportAddressBook multiget失败,请求错误为400。你能在谷歌的CardDAV上运行这个吗?