无法接收Google日历的推送通知

时间:2013-10-19 06:16:53

标签: push-notification google-calendar-api

我正在尝试使用API​​资源管理器和Chrome Advanced Rest Client根据给定的示例观看事件资源。 https://developers.google.com/google-apps/calendar/v3/push#watch_request_examples

Requst

POST https://www.googleapis.com/calendar/v3/calendars/XXX%40gmail.com/events/watch?key={YOUR_API_KEY}

Content-Type:  application/json
Authorization:  Bearer ya29.AHES6ZSNBYiHYPu6Y1_5P08hdb-EX5pdF4Ygj5ou_RKp_jOCS5beiDDH
X-JavaScript-User-Agent:  Google APIs Explorer

{
 "id": "01234567-89ab-cdef-0123456789ab",
 "type": "web_hook",
 "address": "https://www.example.com/WebHook/Index",
 "token": "token=123546"
}

响应

401 Unauthorized



cache-control:  private, max-age=0
content-encoding:  gzip
content-length:  188
content-type:  application/json; charset=UTF-8
date:  Thu, 17 Oct 2013 12:49:00 GMT
expires:  Thu, 17 Oct 2013 12:49:00 GMT
server:  GSE
www-authenticate:  Bearer realm="https://www.google.com/accounts/AuthSubRequest", error=invalid_token

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "push.webhookUrlUnauthorized",
    "message": "Unauthorized WebHook callback channel: https://www.example.com/WebHook/Index"
   }
  ],
  "code": 401,
  "message": "Unauthorized WebHook callback channel: https://www.example.com/WebHook/Index"
 }
}

任何人都可以指导,请求有什么问题吗?

4 个答案:

答案 0 :(得分:0)

当您尝试使用API​​资源管理器时,它不会使用您已注册白名单域的OAuth2.0项目密钥,也许它会使用其他密钥

尝试使用client / lib

答案 1 :(得分:0)

您的身份验证令牌可能不正确。请确保您为正在设置的日历使用正确的身份验证令牌

答案 2 :(得分:0)

我缺少的一步就是在控制台中实际启用Calendar API。 401 push.webhookUrlUnauthorized错误在这里真的没什么用。

答案 3 :(得分:-3)

最后它对我有用,导致错误“未经授权的WebHook回调通道”在项目配置中

  • 转到Google Developers Console
  • 点击您的项目名称
  • 点击左侧的“API& Auth”菜单
  • 然后点击子菜单“推送”
  • 单击“添加域”按钮,允许进行webhook通知 发送到输入的域名

快乐编码:)