I\'m able to intercept Dojo 1.6.1 xhr requests using IO Pipeline Topics as described here:
Dojo - intercepting XHR calls
I would like to add a time para
The answer comes once again from Sven Hasselbach:
/**
* Cache Prevention for Dojo xhr requests
*
* Adds no-cache header and enables dojo's preventCache feature
* for every dojo xhr call. This prevents the caching of partial
* refreshs.
*
* @author Sven Hasselbach
* @version 0.3
*
**/
dojo.addOnLoad(
function(){
if( !dojo._xhr )
dojo._xhr = dojo.xhr;
dojo.xhr = function(){
try{
var args = arguments[1];
args["preventCache"] = true;
args["headers"] = { "cache-control": "no-cache" };
arguments[1] = args;
}catch(e){}
dojo._xhr( arguments[0], arguments[1], arguments[2] );
}
}
)
http://openntf.org/XSnippets.nsf/snippet.xsp?id=cache-prevention-for-dojo-xhr-requests
Tried it out and it does exactly what I was looking for by adding &dojo.preventCache=1359366392301
parameter to the xhr URLs. And it seems to add a cache-control header too.
Both dojo/io/script
and dojo/xhr
have a preventCache
parameter that does exactly what you are trying to do. So instead of trying to intercept, can you just add preventCache: true
to the request arguments?
http://dojotoolkit.org/reference-guide/1.6/dojo/io/script.html#dojo-io-script
http://dojotoolkit.org/reference-guide/1.6/dojo/xhrGet.html#dojo-xhrget