繁体   English   中英

并行访问Google AdWords数据

[英]Accessing Google AdWords data in parallel

特定

我正在开发两个使用相同AdWords API访问凭据的不同应用程序。 Bot应用程序仅用于从API收集/分析数据。

#1和#2应用程序大约需要1个小时才能完成从API获取/分析数据的过程。

我正在使用:

  1. 我自己的AdWords帐户,
  2. ClientLogin身份验证方法,
  3. 红宝石语言。

问题

有时两个时间段(对于应用程序1和应用程序2)可能会重叠,而我开始收到大量此类错误:

AdwordsApi::Errors::ReportXmlError: HTTP code: 400, error type: 'AuthorizationError.USER_PERMISSION_DENIED'

下一个事件序列导致一个问题:

  1. 应用程式1要求Google的验证权凭证,并在收到后将其缓存,
  2. App#1使用令牌启动数据提取过程,
  3. 应用程式2会要求Google寄出授权凭证,并在收到一个后将其缓存,
  4. App#2使用令牌启动数据提取过程,
  5. App#1向AdWords API询问数据的另一部分,但是由于第3项,App 1的身份验证令牌无效,并且由于上述错误,App开始窒息。

因此,问题是: 是否可以进行这样的设置,以使两个应用程序同时访问AdWords API而不会造成令牌干扰/无效

我们有许多应用程序遵循您所描述的相同模式,但是我们不会遇到令牌失效的情况。

AdwordsApi::Api.new(credentials).authorize

我们缓存返回的令牌,然后将其用于后续请求,但我们使用的凭据由许多应用程序共享,令牌仅由一个应用程序使用。 我们将其缓存12个小时,然后将其过期,从而导致发布新的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM