2016-3-18 记录
2016-03-18 本文已影响10人
流离之人
https://www.zybuluo.com/yangfch3/note/167490
HTTP协议
- 规定了客户端与服务端的交互规则
- 无状态:客户的每次请求对服务器来说都是无关的,服务器不能确定请求是否来自同个客户端
URL详解
示例
<pre>
http://www.mywebsite.com/sj/test;id=8079?name=sviergn&x=true#stuff
Schema: http
host: www.mywebsite.com
path: /sj/test
URL params: id=8079
Query String: name=sviergn&x=true
Anchor: stuff
</pre>
- 浏览器就是依靠Content-Type来判断响应的内容
- 为了清缓存,ctrl+f5和直接清除浏览数据,有什么区别么?
- cookie占用客户端资源,可能被盗,与当前浏览器同生命周期
HTTP request header:
-
cache
缓存
-
If-Modified-Since
: -
If-None-Match
: 用于判断是否使用缓存文件 ,可以提高网站性能,与response header
的ETag
配合使用
-
client
头域(Accept)- Accept-content: 浏览器接受的文件类型
- Accept-Encoding: 浏览器声明接收的编码格式
- Accept-language: 浏览器声明自己接受的语言
- user-Agent: 浏览器种类
cookie
-
Referer
:告诉服务器这个页面是从哪个链接过来的 transport
-
connction
: keep-alive的话,tcp连接不断开 -
host
:域名和端口号,从url中截取
HTTP Response header
-
cache
:缓存
-
Date
:生成消息的时间 -
expires
: 声明使用缓存的过期时间
-
cookie
:
-
p3p
:用于跨域传送cookie -
set-cookie
:request
发送一个cookie
,repsponse
就会有一个set-cookie
-
entity
(实体):
-
ETag
: 判断缓存文件的处理 - content-*: 类比
request
的Accept
,声明返回的信息
-
transport
:与request类似 -
location
: 用于重定向一个url