【问题标题】:GoogleAPI NodeJS: calendar.events.watch gets error push.webhookUrlNotHttps or pushWebhookBadDomainGoogleAPI NodeJS:calendar.events.watch 得到错误 push.webhookUrlNotHttps 或 pushWebhookBadDomain
【发布时间】:2016-02-02 04:05:21
【问题描述】:

我已按照https://developers.google.com/google-apps/calendar/v3/push(我认为)中要求的所有设置,我正在尝试使用以下代码注册我的回调 URL 以观看事件:

calendar.events.watch({

    auth:jwtClient,
    resource: {
        id: "yourChannelId",
        type: 'web_hook',
        address: "https://api.mysite.com/notifications"
    },
    calendarId: "mycalendarId"
}, function(error, response) {
    if (error) {
        console.log(error);
        return;
    }
    console.log(response);

});

我收到错误message: 'No valid domain for WebHook callback: https://https://api.mysite.com', reason: 'pushWebhookBadDomain'。如果我尝试将地址设置为“api.mysite.com/notifications”(因为似乎 https 被重复了),那么我会收到错误 message: 'WebHook callback must be HTTPS: api.mysite.com/notifications', reason: 'push.webhookUrlNotHttps'

谁能帮帮我? 谢谢

【问题讨论】:

  • 在创建通知渠道之前,您是否能够在开发者控制台的域验证页面中注册您的域?
  • @adjuremods 是的,在根目录中使用 html 在 Webmasters 中注册,然后添加到我的日历服务的“允许域”中。还有其他地方可以添加吗?
  • 好吧,我回到网站管理员工具,看到一个错误““SSL/TLS 证书不包括域名,”。所以也许是这样,我会在修复它时发布。

标签: node.js google-calendar-api google-api-nodejs-client


【解决方案1】:

我让它工作了。我希望它可以帮助某人。 方法如下:

on Developers Console,网址必须不带https,但必须包含方法。

on Webmaster Tools,URL 必须带有 https,但只能是规范域。

我的问题是,我在 Developers Console 上添加了所有可能性(总共 4 个域),但服务只使用第一个域,这是错误的。

在调用中,没错,用https和方法:

resource: {
    id: "yourChannelId",
    type: 'web_hook',
    address: "https://api.mysite.com/notifications"
}

【讨论】:

  • 嗨丹尼尔,你的例子帮助我解决了问题,我得到了正确的频道并开始 sync 消息,但之后没有任何反应。你知道它应该是什么吗?这是我在这里发布的问题:stackoverflow.com/questions/35434828/…
  • 只是为了确定,您的日历更改发生在您的频道到期日期之前,对吧?
  • 是的,我的频道是最新的,反正它开始工作了,不知道为什么。听起来像谷歌故障。无论如何,谢谢,但你的例子对我帮助很大
猜你喜欢
  • 2019-07-13
  • 1970-01-01
  • 1970-01-01
  • 2021-06-16
  • 2018-11-06
  • 1970-01-01
  • 2020-09-14
  • 1970-01-01
  • 2019-11-01
相关资源
最近更新 更多