问题描述
我的pubsub从我的第一个watch()开始14天后就停止接收消息。 我正在为自己实施一项检查电子邮件的服务。我已按照此处描述的说明进行操作:https://developers.google.com/gmail/api/guides/push#gmail_watch
提到
您必须至少每7天调用一次watch(),否则您将停止收到该用户的更新。我们建议每天调用一次watch()。 watch()响应还具有一个到期字段,其中包含该手表到期的时间戳。
我每天都调用watch(),它返回带有有效的historyId和有效期的HTTP 200。 但是,发布订阅在14天后从我的第一个watch()停止接收消息。
所以我想知道我做错了什么。这是我的设置例程:
- 从本地计算机上设置OAuth令牌初始化。
- 从Google获取授权代码后,我请求了离线访问令牌。
- 我从Google获得了访问令牌和刷新令牌。
- 我从本地计算机上设置了我的第一个gmail watch()。
- 使用获得的访问令牌和刷新令牌,在服务器上设置每日API调用。
- 每天凌晨3点,我的服务器称为watch(),并获得具有有效的historyId和有效期的HTTP 200。
我调用watch()API的代码
const oAuth2Client = new google.auth.OAuth2(clientId,clientSecret,callbackURL);
oAuth2Client.setCredentials(tokens);
const gmail = google.gmail({version: "v1",auth: oAuth2Client});
return gmail.users.watch({
userId: "xxxxx@gmail.com",requestBody: {
topicName: "projects/[project]/topics/[topic]",labelIds: ["INBOX"],}
})
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)