目录
一、https&http
HTTP
HTTP是“超文本传输协议”的首字母缩写。HTTP是万维网使用的基础协议,它定义了如何在Web服务器,网站,浏览器等之间传输和格式化消息。
HTTP协议运行在TCP之上,所传输内容是明文,是不安全的。
原理:1.客户端与服务器建立TCP连接(三次握手)
2.连接成功后,客户端发送请求给服务器
3.服务器接收到客户端发送的请求后作出相应,并将响应信息发送给客户端
4.服务器发送完响应信息后,就会断开TCP连接,因此HTTP是无状态的,下一次访问 的时候不会知道之前访问的过程
5.客户端接收到响应信息,浏览器进行解析,将html文件解析后呈现一个网页在浏览 器上
HTTPS
HTTPS运行在SSL/TLS之上,SSL/TLS运行在TCP之上,所传输内容都是经过加密的,有效地防止运营商劫持。
原理:
区别
HTTPS 协议需要到 CA 申请证书,一般免费证书较少,因而需要一定费用。
HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,HTTP:80,HTTPS:443
HTTP 是超文本传输协议,信息是明文传输,HTTPS 则是具有安全性的 SSL 加密传输协议。
HTTP 的连接很简单,是无状态的。HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全。
二、request请求数据包格式
请求行
组成:请求方法、请求URL,HTTP版本。例:GET/index.html HTTP/1.1
Http规划了8种请求方法:
GET:请求获取URL页面信息及资源,返回实体主题
HEAD:类似于get请求,返回的响应中没有具体内容,用于获取报头
POST:向指定资源提交数据进行处理请求
PUT:从客户端向服务器传送的数据取代指定的文档的内容
DELETE:请求服务器删除指定页面
OPTIONS:允许客户查看服务器的性能
TRACE:回显服务器收到的请求,用于测试和诊断
CONNECT:已文档化,但未实现的一个方法
请求头
一些键值对,浏览器和web服务器之间都可以发送,特定的某种含义
HOST:主机或域名地址
Host:对应网址URL中的web名称和端口号
Accept:浏览器或客户可以接受的MIME文件格式。Servlet可以根据它判断并返回适当的文件格式
User_Agent:客户浏览器名称
Connection:告诉服务器是否可以维持固定的HTTP连接http是无连接的,HTTP/1.