Http 协议(HyPertext Transfer Protocol 超文本传输协议)
常见的协议:Http(超文本传输协议,用作远程的网络资源访问,格式:http://),file(访问的是本地计算机上的资源 主机地址省略 格式是:file://),
),mailto(访问的是电子邮件的地址,格式是mailto:)ftp(访问的是共享主机的文件资源格式)
http协议是规定客户端和服务器之间的数据传输格式,让客户端和服务器能有效的进行数据沟通
客户端 <- >服务器交互
http协议传递的什么格式的数据给服务器
服务器返回什么格式的数据给客户端.
优点:
简单快捷
因为http协议简单,所以http服务器的程序规模小,因而通讯速度很快
灵活
http允许传输任意类型的数据
http0.9和1.0 使用非持续连接
限制每次连接只处理一个请求,服务器对客户端的请求做出响应后,马上断开连接,这种方式可以节约传输时间.
http通信过程 - 请求(请求行,请求头,请求体)
http协议规定:1个完整的由客户端发给服务器的http]请求中包含以下内容
get /MjServer/resources/images/1.jpg HTTP/1.1
请求行: 包含请求方法/请求资源路径,http协议版本.
请求头:包含了对客户端的环境描述/客户端请求的主机地址等信息.
Host:192.168.1.105:8080 //客户端想访问服务器主机地址
User-Agent :Mozilla/5.0 (Macintosh;Intel MacOS X 10.9 ) Firefox/30.0
客户端的类型,客户端的软件环境.
Accept : text/teml , */* //客户端所能接收的客户类型.
Accept-Language :zh-cn 客户端的语言环境.
Accept- Encoding :gzip //客户端支持的数据压缩格式
存放格式:(key —— value )
请求体: 客户端发送给服务器的具体数据,比如文件数据.
查看工具firebug
火狐插件:firbug 可拦截所有的http请求
网络 — 监控所有的http请求
工具 - 附加组件
1 在浏览器中录入rul
2 网络
HTTP通信过程 — 响应
客户端向服务器发送请求,服务器应当做出响应,即返回数据给客户端
http协议规定:一个完整的http响应中包含以下内容
状态行(响应行):包含了htp协议版本,状态码,状态英文名称.
http;/1.1 200 ok
响应头:
server: apache-coyote/1.1 //服务器类型
content-Type :image/jpeg //返回数据的类型
Content-Length:56811(字节) //返回数据的长度
Date //响应的时间
实体内容 : 服务器返回给客户端的具体数据,比如文件数据
客户端 - [请求行,请求头,请求体] >>>服务器
服务器 - [状态行,响应头,实体内容] >>>客户端
响应状态码
200 ok 请求成功
400 BadRequest 客户端请求的语法错误,服务器无法解析
404 NotFound
500 Internal Server Error