http协议和https协议
参考:
- https到底安全在哪里?
- https协议端口号:443
- https实现原理:对称加密和非对称加密
- https通信过程:
- http协议:Hyper Text Transfer Protocol(超文本传输协议)
- http是基于 TCP/IP 协议的应用层协议
- http协议传输的数据都是未加密的,也就是明文的
- http协议端口号:80
- http协议是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。
- http协议请求响应模型:http协议永远都是客户端发起请求,服务器回送响应,如下
- http原理
- 参考:(关于HTTP协议,一篇就够了)https://www.cnblogs.com/ranyonsue/p/5984001.html
http协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。
http请求/响应的步骤:
- 客户端连接到Web服务器:一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接。例如,http://www.oakcms.cn。
- 发送HTTP请求:通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。
- 服务器接受请求并返回HTTP响应:Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。
- 释放连接TCP连接:若connection 模式为close,则服务器主动关闭TCP连接,客户端被动关闭连接,释放TCP连接;若connection 模式为keepalive,则该连接会保持一段时间,在该时间内可以继续接收请求;
- 客户端浏览器解析HTML内容:客户端浏览器首先解析状态行,查看表明请求是否成功的状态代码。然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML,根据HTML的语法对其进行格式化,并在浏览器窗口中显示。
- 常见的http请求方法
- http协议状态码
- 参考:http://blog.51cto.com/12805107/2067971
- HTTP状态码(HTTP Status Code)是用来表示Web服务器响应http请求状态的数字代码
- 会话跟踪技术
由于http协议本身是无状态的,服务器为了区分不同的用户,就需要对用户会话进行跟踪,简单的说就是为用户进行登记,为用户分配唯一的ID,下一次用户在请求中包含此ID,服务器据此判断到底是哪一个用户。
- 使用cookie
- 使用session
- html5中webStorage技术:localStorage和sessionStorage
- url中添加参数
- 表单使用隐藏域
- TCP/IP协议
- (4层:网络接口层,互联网层,传输层,应用层),针对因特网的通讯协议
- URL和URI的区别
- url:是统一资源定位符(是个地址,可以访问到,也是一种URI)
- uri:是统一资源标识符(只是一个名称)
- 从浏览器地址栏输入url到显示页面的步骤
- 浏览器根据请求的URL交给DNS进行域名解析,找到真实的IP地址,通过创建TCP链接,向服务器发送请求
- 服务器交给后台处理后返回数据,浏览器接收文件(html css Js 图像等)
- 浏览器对加载到的资源(html css Js 图像等)进行语法解析,建立相应的内部数据结构(如HTML的DOM结构)
- 载入解析到的资源文件,页面渲染,完成