2016-10-17 41 views
-1

我在我的例子中使用AJAX。在此我使用了cache: false屬性。 它總是觸發請求(我在網絡選項卡中檢查過)。爲什麼請求不被緩存?這裏是我的代碼爲什麼緩存:假不工作在jQuery AJAX

http://codepen.io/anon/pen/WGgKvd?editors=1010

$(function(){ 
    $('#btn').click(function(){ 
     alert('----') 

     $.ajax({ 
      url: "https://api.github.com/events", 
      data: { 
       id: 123 
      }, 
      cache: false, 
      type: "GET", 
      dataType : "json", 
     }).done(function(json) { 
      $("<h1>").text(json.title).appendTo("body"); 
      $("<div class=\"content\">").html(json.html).appendTo("body"); 
     }).fail(function(xhr, status, errorThrown) { 
      alert("Sorry, there was a problem!"); 
      console.log("Error: " + errorThrown); 
      console.log("Status: " + status); 
      console.dir(xhr); 
     }).always(function(xhr, status) { 
      alert("The request is complete!"); 
     }); 
    }) 
}) 
+2

好,'緩存:緩存的FALSE'圈,將其設置爲TRUE;將打開它? – adeneo

+0

您關閉緩存......這就是爲什麼緩存關閉的原因 –

+0

您應該打開它 –

回答

1

jQuery API,如果緩存設置爲false,這將迫使請求的頁面不被瀏覽器緩存。

我想你應該將其更改爲true

+0

sill網絡顯示新請求..請點擊按鈕並檢查網絡標籤 – user944513

+1

在我的Chrome中,第二個請求顯示'Status Code:200 OK(from cache)'(Chrome/53) –