Recentemente ho notato alcuni problemi di prestazioni nel codice javascript del mio sito. Dopo alcuni profili ho scoperto che il problema è il codice Marketo Munchking che uso per tenere traccia degli eventi. Ultimamente hanno cambiato il loro codice JS per inviare la richiesta HTTP sincrona per ogni chiamata a Munchkin.munchkinFunction
. Il frammento di codice di riferimento è:Le richieste sincrone di Marketo Munchkin danneggiano le prestazioni JS
a=new XMLHttpRequest;a.open("GET",b,!1); ... a.send();
Ho aperto un biglietto con Marketo, ma fino a quando non risolvere il loro codice, sto cercando una soluzione. Ho pensato a pochi:
- C'è un modo per collegare il codice js per forzare lo
XMLHttpRequest
in modo asincrono? - È possibile fare riferimento direttamente alle versioni precedenti del proprio script, ad esempio
//munchkin.marketo.net/143/munchkin.js
. L'ho provato e funziona, ma forse mi manca qualcosa.
Esistono altri rimedi? Ogni pensiero è apprezzato.
UPDATE:
appena ricevuto una risposta dal supporto Marketo. Ammettono che le chiamate sono effettivamente sincrone, ma affermano che questo è l'unico modo per non perdere informazioni. Immagino pensino al caso in cui una chiamata a Munchkin.munchkinFunction
viene effettuata appena prima di un reindirizzamento. Non sono d'accordo con loro e chiederò loro di fornire un'alternativa. Nel frattempo sto usando una vecchia versione del loro codice.
UPDATE # 2:
Ha ottenuto un'altra risposta dal loro team di supporto che ha detto che le mie idee sono buone, ma non possono implementare loro in questo momento, e sperano che uno degli sviluppatori li preleverà un giorno ... Comunque ho creato un idea in the Marketo community.
Grazie, quegli errori stavano diventando frustranti! – Thomas
Sono inciampato anche su questo, ma non riesco a trovare quello che i pro/contro sono per averlo come falso contro vero. Ovviamente le tue richieste ora sono veramente asincrone, ma perché il default è falso qui? – kamelkev