Поиск в Поддержке

Избегайте мошенников, выдающих себя за службу поддержки. Мы никогда не попросим вас позвонить, отправить текстовое сообщение или поделиться личной информацией. Сообщайте о подозрительной активности, используя функцию «Пожаловаться».

Подробнее

firefox 6.0, extension getfilesize, last modified time always return "2011.05.16 xxx", it seemed there is bug in XMLHTTP.getResponseHeader('Last-Modified') ?

  • 1 ответ
  • 1 имеет эту проблему
  • 2 просмотра
  • Последний ответ от raidsan

more options

file: chrome\content\load.js there is some bug, so firefox 4.0 can't run it correct. then i modify the source code as following:

function get_file_meta(url, callback, strings) {

   XMLHTTP = new XMLHttpRequest();
   XMLHTTP.open("HEAD", url, true);
   XMLHTTP.url = url;
   XMLHTTP.callback = callback;
   XMLHTTP.strings = strings;
   XMLHTTP.onreadystatechange = function()
   {
       if(XMLHTTP.url && 4 == XMLHTTP.readyState)
       {
           var size = XMLHTTP.getResponseHeader('Content-Length');
           var stime = XMLHTTP.getResponseHeader('Last-Modified');
           XMLHTTP.url = ;

           var str_size = ;

           var str_time = ;

           if(size)
           {
               var strings = XMLHTTP.strings;
               str_size = strings.getString("Size") + ': ' + format_size(size, strings) + (size > 1024 ? ' (' + size + ' ' + strings.getString("bytes") + ')' : );

               var time_str = '-';
               if(stime)
               {
                   var t = new Date(stime);
                   time_str = t.toLocaleString();
               }
               str_time = strings.getString("Last modified") + ': ' + time_str;
           }
           XMLHTTP.callback(str_size, str_time);
file: chrome\content\load.js there is some bug, so firefox 4.0 can't run it correct. then i modify the source code as following: function get_file_meta(url, callback, strings) { XMLHTTP = new XMLHttpRequest(); XMLHTTP.open("HEAD", url, true); XMLHTTP.url = url; XMLHTTP.callback = callback; XMLHTTP.strings = strings; XMLHTTP.onreadystatechange = function() { if(XMLHTTP.url && 4 == XMLHTTP.readyState) { var size = XMLHTTP.getResponseHeader('Content-Length'); var stime = XMLHTTP.getResponseHeader('Last-Modified'); XMLHTTP.url = ''; var str_size = ''; var str_time = ''; if(size) { var strings = XMLHTTP.strings; str_size = strings.getString("Size") + ': ' + format_size(size, strings) + (size > 1024 ? ' (' + size + ' ' + strings.getString("bytes") + ')' : ''); var time_str = '-'; if(stime) { var t = new Date(stime); time_str = t.toLocaleString(); } str_time = strings.getString("Last modified") + ': ' + time_str; } XMLHTTP.callback(str_size, str_time);

Все ответы (1)

more options

well, i got it, it's the extension: "better cache" modified the http head info.