今天讲课的时候,突然发现了一个新的知识点,但是作为老师的我也不会,呵呵。然而我在VIP群里问了,发现人家都会,说的是非常的精炼,是的,他们确实厉害!
function changeNum(){
document.getElementById("safeCode").src="${pageContext.request.contextPath}/ImageServlet?"+ new Date().getTime();
}
这个是一个JS函数,一开始还没有看懂,以为是少了一个参数名,我就在想为啥要这样写,这样写的一种形式我还没有见过。后来强哥给我讲了之后,也听师兄们讲解了之后,还是有点糊涂,
最后,有自己上网查资料,查304代号的意思,看了这么多资料之后,最终终于懂了其中的含义:就是说如果这样去访问"${pageContext.request.contextPath}/ImageServlet,后面没
有任何参数的话,那么这个GET请求每次都是一样,那么这样的话,浏览器就会认为:你每次都请求同一个Servlet,我就不去到服务器那边去执行了,我把第一次的请求结果给你(因为在你
第一次请的时候,Tomcat服务器就会缓存你访问的Servlet结果,目的是为了提高网站的访问速度,提高性能),这样的话,每次现实的结果都是缓存的结果;但是如果你在后面加上时间参
数,或这样随机数的话,浏览器就会认为你每次请求都是不一样的,这样的话,他就会执行后台服务器的代码,这样每次产生的验证码就会不一样了。