给定
我正在开发两个使用相同 AdWords API 访问凭据的不同应用程序。Bot 应用程序仅用于从 API 收集/分析数据。
应用程序#1 和#2 大约需要 1 小时来完成从 API 获取/分析数据的过程。
我正在使用:
- 我自己的 AdWords 帐户,
- ClientLogin认证方式,
- 红宝石语言。
问题
有时两个时间范围(对于应用程序 #1 和 #2)可能会重叠,我开始收到大量这些错误:
AdwordsApi::Errors::ReportXmlError: HTTP code: 400, error type: 'AuthorizationError.USER_PERMISSION_DENIED'
接下来的一系列事件导致了一个问题:
- 应用 #1 向 Google 请求身份验证令牌,并在收到后将其缓存,
- App #1 使用令牌开始数据摄取过程,
- 应用 #2 向 Google 请求身份验证令牌,并在收到后将其缓存,
- App #2 使用令牌开始数据摄取过程,
- 应用 #1 向 AdWords API 请求另一部分数据,但由于第 3 项,应用 1 的身份验证令牌无效,并且由于上述错误,应用开始阻塞。
所以问题是:有没有办法进行这样的设置,以使两个应用程序同时访问 AdWords API 而没有令牌干扰/失效?