刷新浏览器缓存以对同一个事件更新文件进行调用

时间:2014-11-05 12:50:45

标签: javascript asp.net angularjs caching browser

这是我的方案

  1. 是Asp。网站

  2. 通过IFrame嵌入的角色应用

  3. 第一个用户单击.net按钮,该响应将响应保存在服务器上的.csv文件中。每次点击都会在文件

  4. 上更新不同的数据
  5. 然后,用户点击角度页面,该页面使用链接从该文件中获取数据。

  6. 现在的问题在于缓存。因为每次引用相同的链接时,浏览器都会显示上一个请求中的数据,并且实际上并未读取更新的文件。
    我知道它是缓存问题的原因是因为,当我在新浏览器上打开它时,我看到了更新的内容。在我第二次使用不同的请求运行它之后,它再次向我显示相同的数据

    我已经尝试了

    $http.get(url, {cache: false}
    Response.Cache.SetCacheability(HttpCacheability.NoCache); 
    

    在我的aspx page_load函数上。

    如何让它读取更新的文件?任何帮助将不胜感激

2 个答案:

答案 0 :(得分:0)

Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1)); Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.Cache.SetNoStore();

  

将此代码放入页面加载中。现在缓存浏览器中没有数据会尝试从服务器获取页面

答案 1 :(得分:0)

不幸的是我无法找到解决问题的方法,因此我改变了逻辑。

以下是我现在正在做的完美工作:

1 Asp。网站

2通过IFrame嵌入的角色应用

3首先,用户单击.net按钮,将响应保存在服务器上的.csv文件中。每次单击都会在文件上更新不同的数据。所以,我正在添加一个函数,在每次点击时将时间戳添加到文件名

4通过查询字符串哈希值将文件发送到客户端脚本。将文件名添加为哈希值

5在客户端使用$ scope。$ watch,观察网址和每个网址更改,获取文件名并从该位置加载数据。

现在我面临的另一个问题是: Add hash to the current url without reload in c#

如果有人能帮助我吗?

由于