像Firebug一样出色,我会考虑将我的JavaScript调试切换到Chrome,如果我能弄清楚如何在每次访问页面时重新下载样式和图像?
当我在Firefox中测试页面时,它总是获得最新版本.
但是在Chrome中,我经常最终会对某些事情感到头疼,这些事实证明是浏览器缓存某些早期样式或图像的简单问题.
有没有办法在开发过程中将Chrome配置为缓存较少?
非常简单,我正在开发一个MVC5应用程序并且已经注意到(最近)我的浏览器似乎正在缓存我在视图中的JavaScript代码@section Scripts { }.
目前我使用Chrome开发,我曾尝试CTRL+F5与CTRL+SHFT+R该重新加载页面,但alert()在JavaScript代码中的注释去掉,我仍然为渲染评论.我也尝试通过隐身模式以及其他浏览器(Firefox,IE)访问我的本地主机并获得相同的行为.这是我的/Home/Index.cshtmlView,它是应用程序启动时加载的默认View.我还尝试在页面中添加一些额外的HTML文本,然后新代码再次生效/显示.
我目前的Chrome版本Version 41.0.2272.118 m是否有人有任何想法可能会发生什么?
更新:
我已经使用Chrome中的开发者工具=>常规设置并进行了检查[X] Disable cache (while DevTools is open),然后重复(使用DevTools仍处于打开状态)尝试CTRL+SHFT+R并且CTRL+F5在我的更改未生效之前使用相同的结果.
更新2:
打开DevTools后,我还按下了"刷新"按钮并尝试了"正常/硬/空缓存和硬重新加载"选项,结果相同.为了简化测试,我在下面添加了一个警报,以便在页面加载时显示(并且当前没有警报出现):
$(document).ready(function () {
alert("Test");
// Other Code/Functions -- No Error showing in Console
});
Run Code Online (Sandbox Code Playgroud) 我们注意到Chrome在本地缓存文件,甚至没有向我们的服务器发送请求以检查是否有更新版本的javascript文件.
Google缓存的js文件的HTTP响应标头示例:
Accept-Ranges:bytes
Access-Control-Allow-Headers:Content-Type
Access-Control-Allow-Methods:GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Origin:*
Content-Encoding:gzip
Content-Length:5479
Content-Type:application/javascript
Date:Tue, 12 Jan 2016 22:46:07 GMT
ETag:"7d68e1ceb647d11:0"
Last-Modified:Tue, 05 Jan 2016 12:44:25 GMT
Server:Microsoft-IIS/8.5
Vary:Accept-Encoding
x-robots-tag:noindex
Run Code Online (Sandbox Code Playgroud)
Chrome缓存文件是否有效?没有Cache-control标题或者某些东西声明文件可以在本地缓存,它只有ETag和Last-Modified.
BTW
是否有方法(可能是标题)指示Chrome检查缓存文件是否已更改而不将文件名附加到文件名?设置no-cache不是一个选项,因为我希望它被缓存,但我想要使用ETag和Last-Modified标头.
我正在开发 Laravel 8 框架,我已在实时 Cpanel 服务器上添加了该应用程序,然后它开始显示以下错误:
419 页已过期
我知道通常缺少 CSRF 令牌将是主要问题,但在此,我添加了 CSRF 令牌,我使用 LARAVEl Blade 语法,因此添加 LARAVEL Blade 表单语法将直接添加“令牌”(CSRF)。
{{ Form::open( [ "url" => \URL::route("front.login.check"), "autocomplete"=>false,"id" => "login_form" ] ) }}
Run Code Online (Sandbox Code Playgroud)
这会自动添加CSRF,我尝试过直接添加,但是每个POST请求最终都会出现在419 PAGE EXPIRED页面上。
我已经检查了什么?
CSRF Token中并没有缺失Form419页面php artisan cache:clear并dump-autoload命令,但问题仍然存在。storagevendorcache请帮我解决这个问题,接下来我需要检查什么才能解决这个问题?
我有一个调用Mustache.render几次的脚本.
例如:
var data = {
name1: "value",
name2: "value"
}
var html = Mustache.render(template, data);
Run Code Online (Sandbox Code Playgroud)
然后我更新数据变量.例如:
data.name1 = "different value";
// try and render template again
var html = Mustache.render(template, data);
Run Code Online (Sandbox Code Playgroud)
当我再次尝试渲染时,结果模板显示来自Mustache缓存的旧数据,在我的情况下,对于name1,该值将为"value".
有没有办法可以清理Mustache缓存,或者只是让它来渲染新数据,或者我做错了哪些会导致它使用旧数据而不是新数据呢?
我搜索了很多,但没有找到解决方案.
我正在使用JSF 2.1和RichFaces 4.2.3,并希望验证用户的登录数据
我有两个输入字段.一个用户名和一个密码,两者都有@NotEmpty
login.xhtml
<html
xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:rich="http://richfaces.org/rich"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:mt="http://java.sun.com/jsf/composite/components">
<h:body>
<ui:composition template="/protected/user/login-template.xhtml">
<ui:define name="panel-navigation">
<ui:include src="/protected/user/login-left-menu.xhtml" />
</ui:define>
<ui:define name="contentbody">
<h:form>
<div id="content">
<div class="subcolumns">
<div class="c65l">
<div class="subcl">
<p class="sum-error-message" />
<fieldset>
<h3>
<h:outputText value="#{styleguideMessages.login}" />
</h3>
<p>
<h:outputText value="#{messages.login_text}" />
</p>
<div class="subcolumns">
<mt:inputText
id="loginName"
value="#{authenticationPM.loginName}"
label="#{messages.general_label_loginname}"
required="true" />
<div class="c33r validation"></div>
</div>
<div class="subcolumns">
<mt:inputText
id="password"
value="#{authenticationPM.password}"
label="#{styleguideMessages.db_password}"
required="true"
secret="true" />
<div class="c33r validation"></div>
</div>
<div class="subcolumns">
<h:commandLink
id="loginButton"
action="#{authenticationPM.doLogin}"
value="#{styleguideMessages.login}" …Run Code Online (Sandbox Code Playgroud) 几个星期以来,我一直有一个疯狂烦人的问题,我似乎无法解决.有时,当我更新Siteground上托管的网站的Javascript或CSS文件时,Chrome会拒绝识别它们.如果我清空缓存并刷新,其他浏览器会立即提取新文件,Chrome不会.
我有:
令人沮丧的是,当我几个小时后回到它时,这个问题似乎就解决了.我在这里错过了什么让Chrome无法阅读新文件?
遵循一个非常过时的引导教程,但它的结构非常好,所以尝试完成课程。我已经能够通过查看引导文档来解决大多数问题,并且我在使工具提示在主 index.php 页面上工作方面有点困难。请记住,我是网络开发新手。
如果脚本位于同一个 php 文件上,我可以让工具提示正常工作。如下所示:
<script>
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip();
});
</script>
Run Code Online (Sandbox Code Playgroud)
身体内部:
<button type="button" class="btn btn-default" data-toggle="tooltip" data-placement="left" title="Tooltip : left">Tooltip : Left</button>
Run Code Online (Sandbox Code Playgroud)
但是,如果我从 index.php 中删除脚本,并将其放入 myscript.js 中。这是行不通的,我尝试了不同的方法并进行了搜索,所以尝试了过去的几乎所有建议,但似乎没有任何效果。我知道 myscript.js 正在加载,因为我有另一个函数用于将鼠标悬停在菜单下拉菜单上,控制台上也没有错误。
myscript.js 内部
$("[data-toggle='tooltip']").tooltip();
Run Code Online (Sandbox Code Playgroud)
我也尝试过这个:
$(document).ready(function() {
$("body").tooltip({ selector: '[data-toggle=tooltip]' });
});
Run Code Online (Sandbox Code Playgroud)
关于为什么不起作用的任何建议?
我正在研究 Laravel 框架,
我已将v3bootstrap.min.css更改为v4,但浏览器中未更新
我努力了:
php artisan cache:clear
php artisan route:cache
php artisan config:clear
php artisan view:clear
rm -rf bootstrap/cache/*/*
Run Code Online (Sandbox Code Playgroud)
我删除了文件,storage/framework/views但 CSS 仍然没有更新。
谁能帮帮我吗?
我遇到一个非常奇怪的问题。当我在浏览器中打开index.html(见下文)时,DOM 元素正确渲染,但我收到此控制台错误:
Uncaught SyntaxError: Unexpected token '<'
为了确保错误不是来自 JavaScript 中的任何代码,我清空了 JavaScript 文件,因此其中没有任何代码。所以这不是任何“code-in-javascript”相关问题,
它是什么?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>HAHAHA</h1>
<script type="text/javascript" src="./src/index.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) javascript ×6
caching ×3
php ×3
html ×2
laravel ×2
asp.net ×1
asp.net-mvc ×1
bootstrap-4 ×1
browser ×1
csrf ×1
firebug ×1
firefox ×1
jquery ×1
jsf ×1
jsf-2 ×1
laravel-8 ×1
mustache ×1
post ×1
validation ×1