网络
Posted 保护眼睛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络相关的知识,希望对你有一定的参考价值。
HTTP、HTTPS
HTTP 是应用层的协议、是浏览器和HTTP服务器之间交互的协议、HTTP请求是一个纯文本的协议、HTTP的响应也是文本格式的数据、但是为了节省网络的带宽、通常会对数据进行压缩。HTTP协议也就是发送特定规则的字符串、HTTP的响应也是符合特定规则的字符串。浏览器和服务器都按照这样的规则来解析数据、就可以进行通信了。
HTTP的请求的结构:
1.首行(请求的方法、url、版本号)
2.请求的报头(每一行是一个键值对、键和值之间使用的是冒号空格来分割
3.空行(表示的是header的结束标记)
4.请求的正文(body、GET请求一般没有body、POST请求一般有body)
HTTP响应
1.首行(版本号、状态码、状态码的描述)
2.请求的报头(类似于HTTP请求)
3.空行
4.响应的正文(常见的body就是html的参数)
HTTPS :
1.HTTPS是基于HTTP协议的一层加密
2.数据之间的传输是通过对称加密来完成的、对称加密的密钥是通过客户端生成的、传输给服务器的。
3.传输对称加密的密钥的时候、需要再次的加密、这里的加密是使用的是非对称的加密、这里的非对称加密的密钥是服务器生成的、服务器通过证书把公钥返回给客户端。
4.客户端这边拿到证书之后,会对证书进行校验、校验的时候就能发现当前的证书是否被篡改。而是否被篡改是通过数字签名“机制来保证的
URL 资源唯一定位符、描述了互联网上资源的位置
URL由
协议方案名、登录信息、服务器的地址、服务器的端口号、路径、 查询字符串
服务器的地址实际上描述了一个服务器所在的位置的信息、此处的地址也就是IP地址
服务器的端口号:服务器的端口号可找到对应的程序(进程)
如果URL中的端口号被省略的话、那么此时的浏览器会自动的加上端口号、https默认的端口号是443、http默认的端口号是80
如果没有路径的话、那么就是 一个 “\\”表示的是根路径、通过这个路径可以访问到具体的资源、这个资源可以是html、css、js…
查询字符串:使用的是?来分割路径和查询字符串的、查询字符串的结构是key、value的键值对的形似、查询字符串的键值对可以有很多个
URL中的片段标识符 # 一般用于在一个网站内的、用于不同的模块之间的跳转
如果要查询的词出现在query String中的话、那么浏览器就会把这个词转义 \\也比如 ? 会转义成 %3F 这个转义的过程被称为urlencode
把这个转义的符号还原的过程被称为urldecode
以上是关于网络的主要内容,如果未能解决你的问题,请参考以下文章