7

Alcune settimane fa abbiamo iniziato a notare strani errori dall'API del client di google o dall'unità di google JS API (non so quale, il riferimento dell'URL è qui di seguito), hanno aumentato di frequenza negli ultimi giornibug in google drive SDK JS api (TypeError: Impossibile leggere la proprietà 'sl' di indefinito)

TypeError: Cannot read property 'sl' of undefined 

questo sembra essere che interessano le finestre Chrome per lo più - un tipico esempio di user agent dai nostri log di errore è

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

da quello che Ho potuto vedere, l'unica linea con. SLI è questa:

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

questo viene da

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 

So che questo è volutamente criptico, quindi è al di là di me per suggerire come risolvere il problema, ma sarei grato se qualcuno guarda in questo come la frequenza sembra essere in aumento . Forse una guardia attorno a _Ak.pl per verificare se non è nulla prima dell'esecuzione di .sl?

+0

Anche io sto affrontando lo stesso problema. C'è qualche soluzione disponibile? Questo è qualcosa correlato all'SDK fornito. Sto solo seguendo i campioni dati nei documenti. – IvenMS

+0

abbiamo fatto ulteriori indagini e il problema sembra essere correlato al timeout della sessione. una soluzione alternativa è verificare se il token di autorizzazione gapi è vuoto e in tal caso provare a richiamare l'autenticazione prima di chiamare qualsiasi altra funzione. –

+0

Trovato la soluzione e il problema sembra essere dovuto alle impostazioni di autorizzazione. L'API sembra non funzionare con le impostazioni "offline". – IvenMS

risposta

2

Sono riuscito a risolvere il problema segnalato. Il problema è dovuto alle impostazioni di autorizzazione. Alcune impostazioni sembrano non funzionare per l'app. Ora l'app funziona con le seguenti impostazioni:

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

In precedenza l'app è stata configurata per l'esecuzione offline.

Nota: nel codice, clientId e ambiti sono variabili, handleAuthResult è una funzione associata.

Problemi correlati