【问题标题】:Google Directory API - Watch notifcations with far expirationGoogle Directory API - 观看过期的通知
【发布时间】:2017-02-26 10:12:26
【问题描述】:

Directory API 支持监视资源的更改,如下所述: https://developers.google.com/admin-sdk/directory/v1/guides/push

您可以选择在请求频道时设置过期时间,也可以设置 ttl(基本上是一样的)。但是 - 这些都没有影响,它们被忽略了。

这是 Google API 中的错误,还是有解决方法?

这是一个示例请求正文:

{  
   "address":"https://www.example.com",
   "expiration":1477664588000,
   "id":"**my-id**",
   "params":{  
      "ttl":"86400"
   },
   "token":"SomeTokenHEre",
   "type":"web_hook"
}

在这里,我将过期时间设置为 24 小时(unix 时间戳,以毫秒为单位),并且还将 ttl 设置为 24 小时(以秒表示)。回应:

{
 "kind": "api#channel",
 "id": "*My-id*",
 "resourceId": "....",
 "resourceUri": "https://www.googleapis.com/admin/directory/v1/users?customer=my_customer&projection=basic&viewType=admin_view&alt=json",
 "token": "SomeTokenHere",
 "expiration": "1477600105000"
}

到期时间为 6 小时。总是。

【问题讨论】:

  • 你能在你的问题中添加你正在使用的请求吗?另外,尝试使用这个Try it 部分并检查结果的行为是否相同。
  • Ta。 “试试看”不起作用 - 因为要设置通知通道,您需要使用 Google API 管理器控制台注册您的 web_hook 端点。 try it stuff 尝试以您的 google 用户(而不是服务帐户)身份执行,因此始终拒绝您的 web_hook 端点。
  • 关于过期返回错误的原始点是我的错 - 我在几秒钟内传递过期,而不是毫秒。我现在已经更新了这个问题 - 看起来像是谷歌 API 中的一个错误?

标签: google-admin-sdk google-apps-marketplace


【解决方案1】:

在谷歌的回复中 到期时间为 Unix(ms) 纪元时间,转换后给出相对于 2 天,这意味着通道有效期为 2 天 您可以选择设置到期限制

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,现在我认为问题是您最多只能为频道设置 6 小时,并且必须每 6 小时“刷新”/重新创建一次。

    我刚刚确认您可以通过带有 ttl 参数的请求正文方法将它们设置为 less,因此这是有效的方法。

    例如5分钟 {
    "address":"https://www.example.com", "expiration":1477664588000, "id":"**my-id**", "params":{
    "ttl":"300" }, "token":"SomeTokenHEre", "type":"web_hook" }

    但任何比这更大的东西,它默认为 6 小时。我在任何地方或文档中都找不到提到这一点,所以我不能 100% 确定,所以如果其他人可以确认或者我们可以从谷歌开发人员那里得到官方的话,那就太好了。

    【讨论】:

      猜你喜欢
      • 2017-05-28
      • 2019-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-13
      • 1970-01-01
      • 2017-01-23
      • 1970-01-01
      相关资源
      最近更新 更多