How can I force window.location to make an HTTP request instead of using the cache?
You could just add a random parameter to the page URL in order to have the browser issue a new request.
So instead of using
window.location = "my.url/index.html";
use
window.location = "my.url/index.html?nocache=" + (new Date()).getTime();
You can use location.reload with a true argument, which will always bypass the cache.
window.location.reload(true);