Kürzlich bemerkte ich einige Leistungsprobleme in meiner Website Javascript-Code. Nach einigem Profiling entdeckte ich, dass das Problem der Marketo Munchking Code ist, den ich verwende, um Ereignisse zu verfolgen. Es sieht so aus, als ob sie in letzter Zeit ihren JS-Code so geändert haben, dass sie für jeden Anruf eine synchrone HTTP-Anfrage an Munchkin.munchkinFunction
senden. Der entsprechende Code-Schnipsel ist:Marketo Munchkin synchrone Anfragen verletzt JS Leistung
a=new XMLHttpRequest;a.open("GET",b,!1); ... a.send();
Ich habe ein Ticket mit Marketo geöffnet, aber bis sie ihren Code zu beheben, ich suche eine Abhilfe. Ich dachte an ein paar:
- Gibt es eine Möglichkeit, ihre js-Code zu haken, um die
XMLHttpRequest
async zu zwingen? - Es ist sicher, direkt auf ältere Versionen ihres Skripts zu verweisen, z. B.
//munchkin.marketo.net/143/munchkin.js
. Ich habe es getestet und es funktioniert, aber vielleicht fehlt mir etwas.
Gibt es weitere Problemumgehungen? Jeder Gedanke wird geschätzt.
UPDATE:
mich sehr über eine Antwort von Marketo Unterstützung. Sie geben zu, dass die Anrufe tatsächlich synchron sind, aber sie behaupten, dass dies der einzige Weg ist, um keine Informationen zu verlieren. Ich denke, sie denken an den Fall, wenn ein Anruf an Munchkin.munchkinFunction
kurz vor einer Weiterleitung gemacht wird. Ich stimme ihnen nicht zu und werde sie um eine Alternative bitten. In der Zwischenzeit benutze ich eine alte Version ihres Codes.
UPDATE # 2:
eine andere Antwort von ihren Support Team, das die meine Ideen sind gut, aber sie können sie nicht sofort umsetzen, und sie hoffen, dass einer der Entwickler sie abholt eines Tages ... Jedenfalls habe ich eine idea in the Marketo community erstellt.
Danke, diese Fehler wurden frustrierend! – Thomas
Ich bin auch darüber gestolpert, aber ich kann nicht finden, was die Vor-/Nachteile sind, es als falsch gegen wahr zu haben. Offensichtlich sind Ihre Anfragen jetzt wirklich asynchron, aber warum ist hier der Standardwert false? – kamelkev