Web核心--Http协议
HTTP协议简介:
Hyper Text Transfer Protocol 也就是超文本传输协议,目前是使用标准化协议1.1版本,属于应用层的协议,所以还要经过物理层TCP/IP才能够进行真实的传输。HTTP协议是更加关注内容本身的协议,默认端口号是80。
HTTP协议传输的特点:
1、传输明文内容,安全性比较差;
2、HTTP协议是一种无状态的协议;
在HTTP协议的基础上,我们可以使用HTTPS这种比较安全的协议,它在传输的过程中是加密的;在传输Webservice中我们使用的比较多的SOAP协议,它也是基于HTTP协议进行传输的。
HTTP协议的构成:
主要是包括请求和响应两大部分,其中请求报文包含:请求行、请求头、请求正文。响应报文包含:响应行(协议+状态码+响应信息)、响应头、响应正文。
HTTP请求:最主要的是GET和POST请求,还有HEAD、OPTIONS、PUT、DELETE、TRACE请求,这些都是一些不常用的请求。
GET请求简单来说就是获取服务器端的资源。一般获取的是服务器端的一个页面、一张图片、一个静态资源;
POST请求主要是由客户端主动发送数据到服务器端。比方说在我们登录一个页面时,我们需要把我们的用户名和密码发送给服务器进行验证,那么这个过程我们就需要使用post请求来实现;
HEAD请求获取由request-url所标识的资源的响应消息报头;
OPTIONS请求查询服务器的性能,或查询与资源相关的选项和需求;
PUT请求服务器存储一个资源,并且使用request-url作为标识;
DELETE请求服务器删除由request-url所标识的资源;
TRACE请求服务器回送收到的请求消息,主要用于测试或诊断。
HTTP请求报文包含的内容:
请求的第一行:请求的类型和请求的内容;
Accept:客户端能够接收的数据类型;
Referer:跳转前的url;
Accept-Language:客户端优先接收什么语言编码的文档;
User-Agent:客户端浏览器的信息;
Accept-Encoding:客户端所能接收的压缩编码格式,而这里的gzip和deflate则是HTTP中两种主要的压缩;
Host:客户端请求的主机;
Connection:表示发完请求后的状态,Keep-Alive代表保持连接,Close:代表释放连接;
Cookie:保存状态信息。
HTTP响应:响应一般包括协议版本号、状态码、协议的头部、响应的正文。
上面我们已经说了,HTTP协议是一种无状态的协议,但是它可以通过Session和Cookie在服务器和客户端之间传递状态信息。
HTTP-Session:在服务器端记录信息,Session机制的安全性要高一些,但是这些数据直接保存在服务器上会占用服务器的资源,当访问较多时,会影响服务器的性能;
HTTP-Cookie:在客户端记录信息,保存的数据大小有限制,单个cookie不能超过4K,并且Cookie的安全性较差。
- HTTP协议---应用层协议,web核心
- HTTP、TCP、UDP协议导图带你总结web编程核心
- HTTP协议-Web基础-1
- 从WebView到http协议
- JavaWeb---总结(五)Http协议
- javaweb基础(Http协议、Servlet编程、会话管理)
- Web服务及http协议
- 1.HTTP协议|web框架
- Python爬虫最为核心的HTTP协议解析,及自定义协议的分析!
- Web服务器集群——Web基础与HTTP协议
- Web安全—HTTP/HTTPS协议
- HTTP权威指南(国内首本HTTP及其相关核心Web技术权威著作)
- CTFHub-web-前置技能-HTTP协议
- pyhttp -- 用Python演示Web服务器/客户端对HTTP协议的解析
- 简单介绍基于WEB开发的HTTP协议
- [Web开发] Web程序调式的利器 - Fiddler (HTTP协议监视工具)
- Java Web之HTTP协议总结
- HTTP网络协议与手写Web服务容器
- 简单介绍基于WEB开发的HTTP协议
- HTTP协议系列----------- HTTP协议相关的Web安全问题