1.什么是http协议
http:Hyper text transfer protocol 超文本协议 简写
http是基于tcp/ip通信来传递数据(html,图片,查询结果等)
http属于应用层的面向对象协议
2.url 请求过程
我们上网过程中输入一个URL,访问网页,过程是如何呢?
实际上,我们输入地址后,浏览器给这个URL所属的服务器发送了一个request请求,服务器接收到请求后,会对他进行处理,生成response,发给对应的浏览器。
3.http 的特点
1.简单快速。http协议简单,程序服务器小,反应快。
2.灵活。http可以传输任意类型的数据,只要content-Type标记对应的数据就可以。
3.无连接。无连接是指每次服务器只处理一次请求,客户应答后就断开连接。
4.无状态。http是无状态协议,指对事务处理没有记忆能力。对上一个请求的数据内容无法记忆。
5.支持B/S C/S协议
4.request 请求
request请求内容分为四个部分:
请求行(请求方法,url,版本协议)
请求头(host 请求地址,accept-encodeing,accept-language,content-type等)
空行
请求数据(如果是post方法,url的参数就放在这里)
5.response 响应
response响应内容也分为四个部分:
状态行(协议版本号,状态码,状态消息)
消息报头(响应日期,浏览器所需要的一些数据如:content-type,utf-8)
空行
响应正文
6.http状态码
http的状态码一共有五种类别:
1. 1** --指示信息:表示已接收,继续处理
2. 2** --成功:表示成功接收
3. 3**--重定向:要完成请求必须进一步操作
4. 4**--客户端错误:请求有语法错误或者无法实现
5. 5**--服务器错误:服务器未能实现请求
常见的状态码:
200:OK
400:客户端有语法错误,服务器无法理解
401:请求未经授权
403:禁止访问,拒绝访问
404:请求资源不存在
500:服务器发送错误
503:不能处理当前请求,过会正常
7.http 请求方法
1.get:请求指定的页面信息,并返回实体主体。
2.post:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中
3.put:从客户端向服务器传送的数据取代指定的文档的内容
4.delete:删除页面
5.head:类似get,用于获取报头的信息,无响应主体
6.connect:预留给能够将连接改为管道方式的代理服务器
7.options:允许客户端查看服务器的性能
8.trace:回显服务器的请求,用于诊断和观测