Jigberto
Jigberto

Reputation: 1533

firefox addon main.js is showing same request response, not updating

What I'm doing wrong with addon builder? , it is not showing new request response, it show same response all the time, here is my code for main.js :

var tmr = require('timer');
var timus=5000;
  var Request = require("sdk/request").Request;

  function timer_restarting(){

  gint = tmr.setInterval(function() {



Request({
  url: "http://mysite.com/data.txt",
  onComplete: function (response) {

     if(response.text.indexOf('<show>true</show>')>-1){ 
         timus = parseInt(response.text.substring(response.text.indexOf('<interval>')+10,response.text.indexOf('</interval>'))); 
         show(response.text.substring(response.text.indexOf('<message>')+9,response.text.indexOf('</message>')));
         tmr.clearInterval(gint);
         timer_restarting();
     }
  }
}).get();


  }, timus);
} 

timer_restarting();

the addon show every 5 sec same message, it is not updating . I have an impression like it is not doing new request to server. I have changed message but it still show old message. what is the issue?

please

UPDATE:

if I will manually go to that link in browser and refresh it, then addon will refresh the respone as well. Why is that happening ?

Upvotes: 1

Views: 389

Answers (1)

Martijn
Martijn

Reputation: 13622

Try adding a header for 'Cache-control' to your Request instance, and specify a value of 'no-cache' (or some 'max-age' value), to prevent getting a cached response.

E.g. in your example, between the lines

  url: "http://mysite.com/data.txt",
  onComplete: function (response) { /* ... */ }

insert the following lines:

  url: "http://mysite.com/data.txt",
  headers: {
    'Cache-control': 'no-cache'
  },
  onComplete: function (response) { /* ... */ }

Upvotes: 2

Related Questions