<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Http on Coding</title>
		<link>http://coding.dong.asia/categories/http/</link>
		<description>Recent content in Http on Coding</description>
		<generator>Hugo</generator>
		<language>cn</language>
		
		
		
			<copyright>京ICP备17034023号 © 2019 隨風揚</copyright>
		
		
			<lastBuildDate>Tue, 23 Jan 2018 02:45:47 +0000</lastBuildDate>
		
			<atom:link href="http://coding.dong.asia/categories/http/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>HTTP ETag</title>
				<link>http://coding.dong.asia/front/http/etag/</link>
				<pubDate>Tue, 23 Jan 2018 02:45:47 +0000</pubDate>
				<guid>http://coding.dong.asia/front/http/etag/</guid>
				<description>&lt;p&gt;Etag全称EntityTags，HTTP1.1中才加入的，Response Header一个属性，用来帮助服务器控制Web端的缓存验证。由服务器端生成，并且随着文件的改变而改变。HTTP规范从未指定生成ETag的方法。&lt;/p&gt;&#xA;&lt;p&gt;ETag是一个不透明的标识符，由Web服务器根据URL上的资源的特定版本而指定。如果那个URL上的资源内容改变，一个新的不一样的ETag就会被分配。用这种方法使用ETag即类似于指纹，并且他们能够被快速地被比较，以确定两个版本的资源是否相同。ETag的比较只对同一个URL有意义——不同URL上的资源的ETag值可能相同也可能不同，从他们的ETag的比较中无从推断。&lt;/p&gt;</description>
			</item>
			<item>
				<title>浏览器刷新304(Not Modified)和再次请求200(From Cache)结果对比</title>
				<link>http://coding.dong.asia/front/http/cache/</link>
				<pubDate>Mon, 22 Jan 2018 03:11:23 +0000</pubDate>
				<guid>http://coding.dong.asia/front/http/cache/</guid>
				<description>&lt;p&gt;在做性能测试时，无意中发现一个事情：在一个图片资源已经本地缓存到浏览器并且未过期的情况下，刷新网页和再次请求返回的状态不一致。&lt;br&gt;&#xA;以资源ETag=W/&amp;ldquo;PSA-aj-5xx_WUsSsC&amp;quot;为例：&lt;/p&gt;&#xA;&lt;h2 id=&#34;再次请求&#34;&gt;再次请求：&lt;/h2&gt;&#xA;&lt;p&gt;repsonse=200，直接从从本地缓存中取资源。&#xA;&lt;img src=&#34;https://picabstract-preview-ftn.weiyun.com:8443/ftn_pic_abs_v2/0b1d5a2dde0dba98b037757d9ab40feac826330ca39a5e57845582333bdbb948a59ffcac80024178e830a4922b24a792?pictype=scale&amp;amp;from=30113&amp;amp;version=3.3.3.3&amp;amp;uin=535301&amp;amp;fname=200-1.png&amp;amp;size=750&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Request URL:http://guoj.top/wp-content/uploads/2018/01/QQ%E6%88%AA%E5%9B%BE20180115140217.png&#xD;&#xA;Request Method:GET&#xD;&#xA;Status Code:200 OK (from cache)&#xD;&#xA;Remote Address:47.93.55.78:80&#xD;&#xA;&#xD;&#xA;Response Headers&#xD;&#xA;HTTP/1.1 200 OK&#xD;&#xA;Server: nginx/1.13.7&#xD;&#xA;Content-Type: image/png&#xD;&#xA;Content-Length: 8487&#xD;&#xA;Connection: keep-alive&#xD;&#xA;Accept-Ranges: bytes&#xD;&#xA;X-Original-Content-Length: 24343&#xD;&#xA;ETag: W/&amp;#34;PSA-aj-5xx_WUsSsC&amp;#34;&#xD;&#xA;Date: Tue, 16 Jan 2018 08:32:27 GMT&#xD;&#xA;Expires: Wed, 14 Feb 2018 05:59:18 GMT&#xD;&#xA;Cache-Control: max-age=2496410&#xD;&#xA;&#xD;&#xA;Request Headers&#xD;&#xA;GET /wp-content/uploads/2018/01/QQ%E6%88%AA%E5%9B%BE20180115140217.png HTTP/1.1&#xD;&#xA;Host: guoj.top&#xD;&#xA;Connection: keep-alive&#xD;&#xA;Pragma: no-cache&#xD;&#xA;Cache-Control: no-cache&#xD;&#xA;User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.104 Safari/537.36 Core/1.53.4295.400 QQBrowser/9.7.12661.400&#xD;&#xA;Accept: image/webp,image/*,*/*;q=0.8&#xD;&#xA;Referer: http://guoj.top/&#xD;&#xA;Accept-Encoding: gzip, deflate, sdch&#xD;&#xA;Accept-Language: zh-CN,zh;q=0.8&#xD;&#xA;Cookie: Hm_lvt_624adbfe276a5668e7b4779815c5ff38=1513561518; Hm_lvt_7e91fd8ec5e72f05612cc7e567977104=1513561518; wordpress_test_cookie=WP+Cookie+check; wordpress_logged_in_50ac8821fe935de01bdede6b95928a78=dong4stop%7C1516241303%7CRg3hAvZn7NOjg2mST5JurlQ55m4pDmbTzuiMGDygRfn%7Ccb8c3ee4f27ffba3171f763e4df91e2bb1514bfb5167a8af59a20cbc2dac74ec; wp-settings-1=editor%3Dtinymce%26libraryContent%3Dbrowse%26mfold%3Do%26editor_expand%3Don%26hidetb%3D1%26post_dfw%3Doff%26widgets_access%3Doff%26advImgDetails%3Dshow; wp-settings-time-1=1516087140; _GPSLSC=qEFEXaHVp1!Yd4ct0hstK!DAGQ2tgLU_&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;刷新网页&#34;&gt;刷新网页&lt;/h2&gt;&#xA;&lt;p&gt;不同浏览器的效果不一样，又或者做了特别的设置造成。chrome会返回200(From Cache)。qqbrowser会返回304(Not Modified)。&lt;br&gt;&#xA;这是因为qqbrowser刷新网页时在Request Header中加入了：&lt;br&gt;&#xA;&lt;strong&gt;Cache-Control:max-age=0&lt;/strong&gt;&lt;br&gt;&#xA;If-None-Match:W/&amp;ldquo;PSA-aj-5xx_WUsSsC&amp;rdquo;;&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
