2013-09-09 2 views
1

Есть ли способ удалить кеш браузера на пост-обратно прагматически? Я использую функцию JQuery, которые используют Ajax на кнопку мыши с cache:trueУдаление кеша браузера при обратной передаче программно

function CallSyncAjax(url, args, resid, EnableCache, ErrorDivID) { 
$.ajax({ 
    type: "GET", 
    url: url, 
    data: args, 
    cache: EnableCache, 
    success: function (data) { 
     var StrResponse; 
     StrResponse = data.split('@@@'); 
     if (resid == "1001") { 
      LoginByAccountRes(StrResponse[0]); 
     } 
    } 
    }) 
} 

C#:

protected override void OnLoad(EventArgs e) 
{ 
    // Set Cacheability... 
    DateTime dt = DateTime.Now.AddMinutes(1); 
    Response.Cache.SetExpires(dt); 
    Response.Cache.SetMaxAge(new TimeSpan(dt.ToFileTime())); 

    // Complete OnLoad... 
    base.OnLoad(e); 
} 

проблема заключается в том, что всякий раз, когда я обновить страницу через одну минуту и ​​даже когда я закрыть браузер и повторно открыть его, кеш все еще существует

+0

Почему бы не попробовать 'DateTime dt = DateTime.Now.AddMinutes (-1);'? –

+0

try' Response.Cache.SetCacheability (HttpCacheability.NoCache); ' –

+0

, потому что он не работает – Sora

ответ

0

Вы можете использовать эти мета-теги на вашей странице, которая говорит не кэшировать

<meta http-equiv='cache-control' content='no-cache'> 
<meta http-equiv='expires' content='0'> 
<meta http-equiv='pragma' content='no-cache'> 

Но программно вы не можете очистить кэш браузера из-за соображений безопасности браузера.

0

Вы не можете очистить историю браузера с помощью кода из-за соображений безопасности браузеров, вы можете настроить HTTP-заголовок, чтобы сообщить браузеру, чтобы он не хранил ваши страницы, используя это:

Cache-Control: no-cache

0

JavaScript допускает только определенные действия в браузере, и доступ к кешу браузера не является одним из них.

Однако вы можете контролировать кеширование своих веб-страниц, используя теги meta.

<meta http-equiv="cache-control" content="max-age=0" /> 
<meta http-equiv="cache-control" content="no-cache" />