http
在tcp/ip协议上层
请求头:
Host: 初始URL中的主机和端口
Accept:浏览器可以接受的MIME类型
Accept-Charset:浏览器可以接受的字符集
Accept-Encoding:浏览器能够解码的数据编码方式:gzip
Accept-Language:浏览器所希望的语言
Connection:是否需要持久连接()
Content-Length:请求消息正文的长度
Cookie:保持回话状态
Referer:包含一个URL
User-Agent:浏览器类型
响应头:
Access-Control-Allow-Origin:指定站点可以参与跨站资源共享
Content-Length:
Content-Type:响应体的MIME类型js/css/jpg做操作
Date: 服务器时间
Server:服务器名称
Set-Cookie:浏览器据此更新cookie
Transfer-Encoding:设置传输实体的编码格式,chunked,compress,gzip,identity,浏览器根据格式,解压处理响应
http Method
资源期望的动作
get:不操作,只读取数据
head:与get请求一样的响应,只要响应头,没有响应体
post:用于将实体提交到指定资源,改变服务器状态、数据
put:创建、更新指定资源,
delete:删除指定资源
区分:
安全性:资源不发生改变
幂等性:请求多次,结果相同
get:安全,幂等,浏览器一般要缓存get的资源
head:同get
post:不安全不幂等,会更改服务器资源,每次post修改
put:不安全,幂等,
delete:不安全,幂等
状态码:
1xx:消息
2xx:成功
3xx:重定向
301:永久,浏览器会缓存,之后每次都会新地址
302:临时重定向,浏览器不会 缓存
304:资源没有改变,浏览器取缓存
4xx:客户端错误
403:禁止访问
5xx:服务器挂
500:服务器内部bug
503:服务器临时挂
content-type:
请求和响应的http内容类型
格式:type/subtype:text/html、text/css、text/javascript、告诉后端请求体用什么格式编码:application/x-www-form-urlencoded、multipart/form-data、application/json
application/x-www-form-urlencoded:
form标签默认编码方式:a=b&c=b&d=w
难表示复杂类型(数组)
multipart/form-data:
可传数据多,主要传文件
application/json:
ajax提交json格式,$ajax