7

几周前,我们开始注意到来自 google 客户端 API 或 google drive JS api 的奇怪错误(不确定是哪个,URL 参考如下),过去几天它们的频率有所增加

 TypeError: Cannot read property 'sl' of undefined

这似乎主要影响 Windows Chrome - 我们错误日志中的用户代理的典型示例是

Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.43 Safari/537.31)

据我所见,.sl 唯一的一行是:

if(!this.b.headers.Authorization){var f=(0,_.Hx)(_.p,_.p);f&&f[_.Ak.pl.sl]&&(c=f[_.Ak.pl.sl].split(/\w+/))}

这来自

https://apis.google.com/_/scs/apps-static/_/js/k=oz.gapi.en.uSTvEdNXb7o.O/m=client/rt=j/sv=1/d=1/ed=1/am=UQ/rs=AItRSTOm1KS5pZVEepZkn9qQJeuQZC_Qjw/cb=gapi.loaded_0

我知道这是故意神秘的,所以我无法建议如何解决它,但如果有人调查这个问题,我将不胜感激,因为频率似乎在增加。也许 _Ak.pl 周围的守卫在执行 .sl 之前检查它是否不为空?

4

1 回答 1

2

我设法解决了报告的问题。问题是由于授权设置。某些设置似乎不适用于该应用程序。现在该应用程序使用以下设置:

gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: false}, handleAuthResult);

以前,该应用程序被配置为离线运行。

注意:在代码中,clientId 和 scopes 是变量,handleAuthResult 是关联函数。

于 2013-05-04T06:23:48.530 回答