分析HTTP请求返回304状态码

大家好,今天给大家分享一个状态码304,大家可能在以前的开发中打开chrome tools 或 firebug工具时有意间或无意间看到它。

HTTP 304: Not Modified 
标准解释是:Not Modified 客户端有缓冲的文档并发出了一个条件性的请求(一般是提供If-Modified-Since头表示客户只想比指定日期更新的文档)。服务器告诉客户,原来缓冲的文档还可以继续使用。
如下图:

在请求头里有:If-Modified-Since: Mon, 17 Aug 2015 01:53:41 GMT

在响应头里有:Last-Modified: Mon, 17 Aug 2015 01:53:41 GMT

大家对比一下这二个日期发日期和时分秒都是完全一致的,如果一致就从缓存中去获取内容

我们在图片中看到了一个它cache-control 
如果cache-control:no-chache说明强制每次请求直接发送给源服务器,而不经过本地缓存版本的校验。
如果cache-control:max-age=0有二种情况:
1、max-age>0 时 直接从游览器缓存中 提取 
2、max-age<=0 时 向server 发送http 请求确认 ,该资源是否有修改有的话 返回200 ,无的话 返回304.

第一次访问 200 
鼠标点击二次访问 (Cache) 
按F5刷新 304 
按Ctrl+F5强制刷新 200

时间: 2024-10-05 04:55:09

分析HTTP请求返回304状态码的相关文章

robot framework——httplibrary.http接口自动化库 ——get response status关键字——获取http请求返回的状态码

get response status关键字——获取http请求返回的状态码. ======================================================= 示例:获取百度搜索soapui返回的http状态码 create  http  context www.baidu.com/ scheme=https get /s?wd=soapui&pn=10&oq=soapui&tn=50000021_hao_pg&ie=utf-8&rs

NGINX反向代理对HTML页面的POST请求返回405状态码解决方法

实现如下: server {     listen 80;     listen 443 ssl;     server_name nirvana.test-a.gogen;     ssl_certificate      /etc/nginx/ssl/nirvana.test-a.gogen.crt;     ssl_certificate_key  /etc/nginx/ssl/nirvana.test-a.gogen.key;     proxy_connect_timeout 600;

304状态码--摘自百科

1定义编辑 如果客户端发送了一个带条件的 GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个304状态码. 简单的表达就是:客户端已经执行了GET,但文件未变化. 2什么情况下会返回304状态码编辑 客户端是怎么知道这些内容没有更新的呢?其实这并不是客户端的事情,而是你服务器的事情,大家都知道服务器可以设置缓存机制,这个功能是为了提高网站的访问速度,当你发出一个GET请求的时候服务器会从缓存中调用你要访问的内容,这个时候服务器就可以判断

在服务器上处理请求时出现未知错误。服务器返回的状态码为500

操作方法: 为页面的ScriptManager控件添加EnablePartialRendering="false"的属性  此方法不是直接解决或规避问题的,是为了将详细的页面错误显示出来,以便找到需要修正 的地方,个人觉得这才是正道嘛,不能躲避错误,而应尽量不让错误发生. ---> 找出错误  -- > 修改. <asp:ScriptManager ID="ScriptManager" runat="server" Enable

HTTP/1.1标准请求方法和状态码

HTTP/1.1标准自从1999年制定以来至今仍然是一个应用广泛并且通行的标准 相关文档 RFC2616:Hypertext Transfer Protocol -- HTTP/1.1 在RFC6585中,状态码428.429.431.511加了进来 RFC2616制订了关于HTTP/1.1的一系列标准 下面我们来关注请求方法和状态码 在第九章中,请求方法包括GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT一共七个,其中GET.POST在编程中用得最多 HEAD:只返

304状态码前后的具体流程

首先304状态码或许不应该认为是一种错误,而是对客户端有缓存情况下服务端的一种响应.        客户端在请求一个文件的时候,发现自己缓存的文件有 Last Modified ,那么在请求中会包含 If Modified Since ,这个时间就是缓存文件的 Last Modified .因此,如果请求中包含 If Modified Since,就说明已经有缓存在客户端.服务端只要判断这个时间和当前请求的文件的修改时间就可以确定是返回 304 还是 200 .对于静态文件,例如:CSS.图片,

介绍知道的http返回的状态码

100    Continue    继续.客户端应继续其请求 101    Switching Protocols    切换协议.服务器根据客户端的请求切换协议.只能切换到更高级的协议,例如,切换到HTTP的新版本协议 200    OK    请求成功.一般用于GET与POST请求 201    Created    已创建.成功请求并创建了新的资源 202    Accepted    已接受.已经接受请求,但未处理完成 203    Non-Authoritative Informat

你眼中的404页面未必返回404状态码

很多站长在做网站诊断的过程中,往往会查看网站有没有做404页面,一般判断的方法很简单,就是在搜索引擎地址栏随便输入一个该域名错误链接,然后看有没有404页面.这样对吗?404页面存在的意义就是告诉浏览者和搜索引擎所请求的页面不存在或是链接错误,你这检查只能说明用户看到的是404页面,而对于搜索引擎呢?会对这个页面返回404状态码吗? 先来来看看下面二张图,你眼中的404页面未必返回404状态码. 你眼中的404页面未必返回404状态码

HTTP请求方法与状态码

HTTP请求方法 根据HTTP标准,HTTP请求可以使用多种请求方法. HTTP1.0定义了三种请求方法:GET,POST和HEAD方法. HTTP1.1新增了五种请求方法:OPTIONS,PUT,DELETE,TRACE 和 CONNECT方法. GET:请求制定的页面信息,并返回实体主体. HEAD:类似于get请求.只不过返回的响应中没有具体的内容,用于获取报头. POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件).数据被包含在请求体中.POST请求可能会导致新的资源的建