是时候去SE了,因为现在花了我4个多小时。
我正在尝试设置来自Google Drive API的推送通知的webhook(https://app.example.com/notications
)。
设置完所有内容后,我收到错误:
...
errors": [
{
"domain": "global",
"reason": "push.webhookUrlUnauthorized",
"message": "Unauthorized WebHook callback channel: https://app.example.com"
}
],
...
谷歌上有一些结果(大部分都在SE上)讨论这个问题。所提出的解决方案似乎都不适合我。毋庸置疑,如果我有一些东西,我会把头发撕掉。
这是我尝试过的事情:
正如here所述,有一些要求:
第1步:验证您是否拥有该域。 (使用网站站长工具完成网站验证流程)
通过网站站长工具注册app.example.com
。另外还验证example.com
虽然这不重要。 查看!
第2步:注册您的域名:
完成app.example.com
。 查看!
请注意,只有在您的网络服务器上安装了有效的SSL证书时,Drive API才能向此HTTPS地址发送通知。无效的证书包括:
我做了什么:
app.example.com
。 构建POST查询
https://www.googleapis.com/drive/v2/changes/watch
端点Authorization: Bearer x
标题Content-Type:application/json
标题帖子包含一个正文如下
{
"id": "someIdThatDoesntMatter",
"type":"web_hook",
"address": "https://app.example.com/notifications"
}
查看!
我通过Postman运行所有这些(Chrome扩展程序用于测试http请求),因此我的应用程序中没有可以干扰的应用程序。
究竟是什么问题?
答案 0 :(得分:0)
这很奇怪,但是以某种方式起作用。
https://app.example.com/notifications
的完整URL 在进行日历API调用时,尝试使用带有斜杠的完整URL
{
"id": "someIdThatDoesntMatter",
"type":"web_hook",
"address": "https://app.example.com/notifications/"
}
答案 1 :(得分:-4)
第4步的POST正文地址:“https://app.captured.io/notifications”应为“https://app.example.com/notications”。或者相反。无论哪种方式,它们都应该匹配,这样我们才能理解这只是你帖子中的拼写错误还是真正回答你的问题。 :)
哦;在“https://app.example.com/notications”中,“通知”拼写错误。它应该是:“https://app.example.com/notifications”。 ......或者反过来,如果这是你的事情:)
根据他们的文件,这也值得注意:
除非当前用户或服务帐户拥有或有权访问此资源,否则监视请求将无法成功。