我需要以某种方式检测用户是否已按下浏览器后退按钮并使用jquery重新加载页面并刷新(重新加载内容和CSS).
如何通过jquery检测这样的动作?
因为如果我在浏览器中使用后退按钮,所以现在不会重新加载某些元素.但是,如果我在网站中使用链接,则所有内容都会刷新并正确显示.
重要!
有些人可能误解了我想要的东西.我不想刷新当前页面.我想按下后退按钮后刷新加载的页面.这是我更详细的意思:
我的网站和IE有问题.我有一个文件Document.ashx,它根据查询字符串中传递的参数成为我数据库中的文档.
该文件适用于:
如果:
Windows Internet Explorer
无法从MyHostName下载Document.ashx.
无法打开此Internet站点.
请求的网站不可用或无法找到.
请稍后再试.
有没有人知道会导致这种情况的原因.当然它在Firefox中运行良好.
我在办公室里找了几个人用IE来试试,他们都遇到了同样的问题.他们都说它适用于Firefox.
我正在展示非常敏感的数据.用户从我的服务器注销后,我不希望其他用户能够看到数据点击浏览器的"后退"按钮.
我怎样才能做到这一点?
当我更新我的网站时,运行npm run build并将新文件上传到服务器我仍在查看我的网站的旧版本.我的项目的回购是 https://github.com/Alfrex92/serverlessapps
没有React,我可以看到我的网站的新版本缓存破坏.我这样做:
上一个文件
<link rel="stylesheet" href="/css/styles.css">
Run Code Online (Sandbox Code Playgroud)
新文件
<link rel="stylesheet" href="/css/styles.css?abcde">
Run Code Online (Sandbox Code Playgroud)
我怎么能做这样的事情或用create react app实现缓存清除?
在创建的github中有许多线程对此做出反应,但没有人有正确/简单的答案.
如何在JSP中添加Expires或Cache-Control标头?我想在包含页面中为我的静态组件添加远期到期日期,例如图像,CSS和JavaScript文件.
我试图确保某个页面永远不会被缓存,并且在用户单击后退按钮时从不显示. 这个非常高评价的答案(目前1068支票)说使用:
Response.AppendHeader("Cache-Control", "no-cache, no-store, must-revalidate");
Response.AppendHeader("Pragma", "no-cache");
Response.AppendHeader("Expires", "0");
Run Code Online (Sandbox Code Playgroud)
但是在IIS7/ASP.NET MVC中,当我发送这些头时,客户端会看到这些响应头:
Cache-control: private, s-maxage=0 // that's not what I set them to
Pragma: no-cache
Expires: 0
Run Code Online (Sandbox Code Playgroud)
缓存控制头怎么了?IIS7或ASP.NET本机的内容是否会覆盖它?我检查了我的解决方案,我没有覆盖此标头的代码.
当我Response.Headers.Remove("Cache-Control");首先添加时,它没有任何区别:
Response.Headers.Remove("Cache-Control");
Response.AppendHeader("Cache-Control", "no-cache, no-store, must-revalidate");
Response.AppendHeader("Pragma", "no-cache");
Response.AppendHeader("Expires", "0");
Run Code Online (Sandbox Code Playgroud)
当我添加一个[OutputCache]属性时:
[OutputCache(Location = OutputCacheLocation.None)]
public ActionResult DoSomething()
{
Response.Headers.Remove("Cache-Control");
Response.AppendHeader("Cache-Control", "no-cache, no-store, must-revalidate");
Response.AppendHeader("Pragma", "no-cache");
Response.AppendHeader("Expires", "0");
var model = DoSomething();
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
然后客户端响应标头更改为:
Cache-control: no-cache
Pragma: no-cache
Expires: 0
Run Code Online (Sandbox Code Playgroud)
哪个更接近,但仍然不是我要发送的标题.这些标题在哪里被覆盖,我该如何阻止它?
编辑:我已经检查过,错误的标题被发送到Chrome,FF,IE和Safari,所以它看起来是一个服务器问题,而不是浏览器相关的问题.
我有一个HTML页面.问题是我不想让用户每次放入新内容时刷新页面.
我有以下代码,以确保页面没有缓存:
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/>
<meta http-equiv="Pragma" content="no-cache"/>
<meta http-equiv="Expires" content="0"/>
Run Code Online (Sandbox Code Playgroud)
问题是,我仍然需要在页面上刷新,以便显示最新的内容.难道我做错了什么?我应该使用其他一些标签吗?
如何通过在浏览器的地址栏中输入URL www.mydomain.com/index.htm或只需www.mydomain.com并按Enter键,强制浏览器在加载页面时始终加载最新版本的index.htm.
我正在Chrome中尝试这个,最新版本的index.htm显然只是加载,当我手动刷新(F5),或者当URL已经在浏览器的地址栏中时我按下回车键.
我想我正在做一些非常愚蠢的事情,因为当我搜索这个问题时,我所能找到的解决方案是关于如何通过将?v = xxxx附加到文件名来使浏览器重新加载.js和.css文件.但是,如果不是最新版本的index.htm页面(我正在进行这些修改),这应该如何工作?
我也尝试过
<meta http-equiv="cache-control" content="no-cache">
Run Code Online (Sandbox Code Playgroud)
在<head>index.htm中.但这似乎没有任何影响.
任何帮助将不胜感激!
谢谢,Linus
我有一个VueJS应用程序.每当我运行npm run build它时会创建一组新dist/*文件,但是,当我在服务器上加载它们(删除旧版本后),并在浏览器中打开页面时,它会加载旧版本(从我假设的缓存中).当我刷新页面时,它加载新代码没问题.
这是我的index.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="-1" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
<link rel="stylesheet" href="/static/css/bootstrap.min.css"/>
</head>
<body>
<div id="app"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
有没有办法强制它每次加载新代码或(理想情况下)检查旧文件是否从服务器中消失,然后刷新浏览器?
caching ×4
html ×3
browser ×2
http ×2
javascript ×2
asp.net-mvc ×1
back-button ×1
c# ×1
download ×1
http-headers ×1
iis-7 ×1
java ×1
jquery ×1
jsf ×1
jsp ×1
page-refresh ×1
react-redux ×1
reactjs ×1
reload ×1
vue.js ×1