Verhindern Sie den Cache in jeder Dojo-xhr-Anforderung auf der Seite
Ich kann Dojo 1.6.1 xhr-Anfragen mit abfangenIO-Pipeline-Themen wie hier beschrieben:
Dojo - Abfangen von XHR-Anrufen
Ich möchte der URL einen Zeitparameter hinzufügen (z. B.&time=12345
), um den Cache in bestimmten (oder allen) xhr GET-Anforderungen zu verhindern, die von stammendojox.data.JsonRestStore
(Einzelheiten zu dem, was ich erreichen will, sindHier). Mein Code sieht so aus:
dojo.subscribe("/dojo/io/send", function(deferred) {
if (deferred.ioArgs.url.indexOf("restService1") > -1) {
deferred.cancel();
deferred.ioArgs.url += '&time=12345' // test value at this point
dojo.xhrGet(deferrred.ioArgs);
}
});
Grundsätzlich versuche ich, die Anfrage abzubrechen, eine Zeichenfolge zur URL hinzuzufügen und dann die Anfrage mit der geänderten URL zu stellen.
Dies funktioniert überhaupt nicht: Die Anfrage mit geänderter URL landet nicht auf dem Server, und ich erhalte viele der folgenden Fehler in der Browserkonsole:
Die Fehler treten in Zeile 14 von dojo.js auf. Der Chrome-Tab stürzt nach diesen Fehlern schließlich ab.
Ich habe auch versucht, nur zu änderndeferred.ioArgs.url
und nichts anderes zu tun, aber das hat keine Wirkung.