zoukankan      html  css  js  c++  java
  • 在地址栏回车 浏览器做了哪些动作

    三种行为  地址栏回车  F5  ctrl+F5

    一、地址栏回车,

    观察Chrome下的行为,由于该页面已经访问过,而且设置了cache-control,所有资源文件在network一栏都是200 from cache,注意这个200不是服务器返回的。

    对于本页面则会得到一个304,说明浏览器会对地址栏的地址无论如何发送一个请求,并在header里带上 if-modified-since。

    二、按下F5,

    该行为会触发浏览器对所有资源重新请求,并在header里带上 if-modified-since,因为资源没有变化,得到的响应式304。

    三、Ctrl+F5, 

    Ctrl+F5要的是彻底的从Server拿一份新的资源过来,所以不光要发送HTTP request给Server,而且这个请求里面连If-Modified-Since/If-None-Match都没有,这样就逼着Server不能返回304,而是把整个资源原原本本地返回一份,这样,Ctrl+F5引发的传输时间变长了,自然网页Refresh的也慢一些。

    实际上,为了保证拿到的是从Server上最新的,Ctrl+F5不只是去掉了If-Modified-Since/If-None-Match,还需要添加一些HTTP Headers。按照HTTP/1.1协议,Cache不光只是存在Browser终端,从Browser到Server之间的中间节点(比如Proxy)也可能扮演Cache的作用,为了防止获得的只是这些中间节点的Cache,需要告诉他们,别用自己的Cache敷衍我,往Upstream的节点要一个最新的copy吧。

    在IE6中,Ctrl+F5会添加一个Header

    Pragma: no-cache


    在Firefox 2.0中,Ctrl+F5会添加两个 
    Pragma: no-cache 
    Cache-Control: max-age=0

    作用就是让中间的Cache对这个请求失效,这样返回的绝对是新鲜的资源

  • 相关阅读:
    axure 用中继器实现下拉多选框
    excel 常用全局变量
    win10 x64 python3.6 pycharm 安装statsmodels
    Oracle 10进制转36进制
    概念数据模型设计与逻辑数据模型设计、物理数据模型设计的关系
    does not support ASP.NET compatibility 错误
    Oracle日志文件管理与查看
    oradmin相关用法
    Oracle Standby Database 实现方案
    c# 调用zebra打印指令 打印到USB端口
  • 原文地址:https://www.cnblogs.com/jamesldj/p/3322698.html
Copyright © 2011-2022 走看看