HTTP协议
HTTP(超文本传输协议)是一个基于请求和响应模式,无状态的,应用层的协议,常基于tcp的连接方式,是一个属于应用层的面向对象的协议。HTTP协议工作于客户端/服务器架构之上,浏览器用url向服务器发送请求。
特点:
1.通信速度快: 由于http协议简单,http服务器程序规模小,因而通信速度快
2.灵活:http允许传输任意类型的数据对象,类型由content-type决定
3.无连接:无连接的含义是限制每次连接只处理一个请求。服务端处理完客户的请求,并接收到应答后,即断开连接,可以节省传输时间。请求时建立连接,请求完释放连接,以尽快将资源释放出来服务其他客户。
4.无状态:无状态是指协议对于业务处理没有记忆能力,服务端不知道客户端是什么状态。不需要先前信息时,应答比较快。 优点是缓解了服务器的压力,缺点是每次请求会传输大量重复信息。
保持http连接状态的技术:
cookie和session
http请求消息request:
请求行:请求类型(get/post),请求资源,http版本
请求头:
- accept-language : 浏览器支持的语言;
- accept-charset : 浏览器支持的编码
- accept : 浏览器支持的mime类型
- accept-encoding : 浏览器支持的压缩编码
- user-agent : 用户代理,用于让服务端识别客户端和浏览器的信息
- host : 域名,请求地址
- connection : keep-alive 。 连接类型,keep-alive代表持久连接
空行
请求体(请求数据)
http响应消息responce:
状态行:200(请求成功),404(请求资源不存在),500(服务器内部错误)
响应头(消息报头):
- allow: 服务器支持哪些请求方法;
- content-encoding : 响应文档的编码格式;
- content-length : 响应内容长度;
- content-type : 响应文档的mime类型 text/html, text/xml , application/json ;
- date:当前dmt时间;
- expires : 表面文档什么时候过期;
- last-modified : 文档最后修改时间 ;
- location : 文档定位;
- refresh : 表面浏览器多久刷新文档 ;
- server : 服务器名字 ;
- set-cookie : 设置和页面关联的cookie ;
- www-authenticate : 授权信息
空行
响应体(响应正文)
网友评论