소스 검색

HUE-1996 [core] Prevent ajax caching on IE

Added ajaxSetup and removed all Math.random()
Enrico Berti 11 년 전
부모
커밋
d3cde24e71

+ 1 - 1
apps/beeswax/src/beeswax/templates/execute.mako

@@ -991,7 +991,7 @@ $(document).ready(function () {
   renderRecent = function() {
     $("#recentLoader").show();
     recentQueries.fnClearTable();
-    $.getJSON("${ url(app_name + ':list_query_history') }?format=json&"+Math.random(), function(data) {
+    $.getJSON("${ url(app_name + ':list_query_history') }?format=json", function(data) {
       if (data && data.queries) {
         var _rows = [];
         $(data.queries).each(function(cnt, item){

+ 1 - 1
apps/jobbrowser/src/jobbrowser/templates/job.mako

@@ -423,7 +423,7 @@ $(document).ready(function () {
 
   function callJobDetails() {
     isUpdating = true;
-    $.getJSON("?format=json&rnd=" + Math.random(), function (data) { // Need to add random to prevent the cached of IE9
+    $.getJSON("?format=json", function (data) {
       if (data != null && data.job != null) {
         updateJob(data.job);
         updateFailedTasks(data.failedTasks);

+ 1 - 2
apps/jobbrowser/src/jobbrowser/templates/jobs.mako

@@ -267,7 +267,7 @@ ${ components.menubar() }
     }
 
     function callJobDetails(job, finish) {
-      $.getJSON(job.url + "?format=json&rnd=" + Math.random(), function (data) {
+      $.getJSON(job.url + "?format=json", function (data) {
         if (data != null && data.job) {
           var jobTableNodes = jobTable.fnGetNodes();
           var _foundRow = null;
@@ -304,7 +304,6 @@ ${ components.menubar() }
       if ($("#showRetired").is(":checked")) {
         _url += "&retired=on";
       }
-      _url += "&rnd=" + Math.random(); // thanks IE!
       $.getJSON(_url, callback);
     }
 

+ 3 - 3
apps/spark/static/js/spark.vm.js

@@ -271,7 +271,7 @@ function sparkViewModel() {
   var timerId = 0;
 
     var request = {
-      url: '/spark/api/job/' + self.query.jobId() + '?' + Math.random(),
+      url: '/spark/api/job/' + self.query.jobId(),
       dataType: 'json',
       type: 'GET',
       success: function(data) {
@@ -299,7 +299,7 @@ function sparkViewModel() {
 
   self.fetchAppNames = function() {
     var request = {
-      url: '/spark/api/jars?' + Math.random(),
+      url: '/spark/api/jars',
       dataType: 'json',
       type: 'GET',
       success: function(data) {
@@ -317,7 +317,7 @@ function sparkViewModel() {
 
   self.fetchContexts = function() {
     var request = {
-      url: '/spark/api/contexts?' + Math.random(),
+      url: '/spark/api/contexts',
       dataType: 'json',
       type: 'GET',
       success: function(data) {

+ 6 - 1
desktop/core/src/desktop/templates/common_header.mako

@@ -143,6 +143,11 @@ from django.utils.translation import ugettext as _
 
   <script type="text/javascript" charset="utf-8">
     $(document).ready(function () {
+      // forces IE's ajax calls not to cache
+      if ($.browser.msie) {
+        $.ajaxSetup({ cache: false });
+      }
+
       // prevents framebusting and clickjacking
       if (self == top){
         $("body").css({
@@ -183,7 +188,7 @@ from django.utils.translation import ugettext as _
       window.setTimeout(checkJobBrowserStatus, 10);
 
       function checkJobBrowserStatus(){
-        $.getJSON("/${apps['jobbrowser'].display_name}/?format=json&state=running&user=${user.username}&rnd="+Math.random(), function(data){
+        $.getJSON("/${apps['jobbrowser'].display_name}/?format=json&state=running&user=${user.username}", function(data){
           if (data != null){
             if (data.length > 0){
               $("#jobBrowserCount").removeClass("hide").text(data.length);