HTTP协议的一些总结
- 属于应用层协议
协议主要特点:
- 支持客户端/服务端模式
- 简单快速:由客户端向服务器端发送请求时只需要发送路径和请求方法。请求方法有7种:get,post,head,options,delete,trace,put。一般常见的是get和post。
- 灵活:允许传送任意数据对象 ,由content-type决定传输的数据类型。
- 无连接:双方在一次交互完成后不保持连接。这里说的是1.1版本。1.0版本在一次请求与响应后就断开连接。
- 无状态协议:指的是对之前处理的事物没有记忆能力。意味着如果后续请求用到了前一次请求的内容需要重新传(这里不能理解为现在浏览器的记忆功能,纯http是不具备的)。
会话方式:
会话经历四个步骤:
1.建立连接 2.发出请求 3.响应请求 4.关闭连接
- 浏览器到服务器间的所有通讯都是完全独立分开的请求和响应对
http请求和响应
关于这两个点,网上资料太多也很全,这里就不详细说了
请求方式
说过刚才,请求方式有7种,用到的一般是get和post,那么就来说下get和post。 通常都会说get不安全,post安全,get传送数据大小有限制,4k这些。不过这些都是在客户端是浏览器的情况下,http协议不一定要用在浏览器吧,所以,如果客户端不是浏览器呢? 正常的get和post是没有刚才所说的安全和大小限制的。至于区别嘛,我的知识还不够,因此还不清楚具体区别是啥。有大神可以告诉我是最好的。
状态码
200:接收成功 302:重定向,请求资源被重定向到别的地方 404:找不到资源 500:服务器内部出错 这里是常见几个。当然还有很多,就不一一列举了、
mime
可以理解为指定文件扩展名。