前言:web
若是学校要求大家必须考二级而你又不想去考简单的office怎么办?服务器
或许web是一个不错的选择markdown
HTTP协议又称超文本传输协议,属于TCP/IP协议簇中的应用层网络
简介一下TCP/IP协议簇
应用层
决定了向用户提供服务时通讯的活动 HTTP协议就在这一层,与其同层的有FTP(文件传输协议),DNS(域名系统)等网站
传输层
为网络链接中的两台计算机之间提供数据传输 在这一层有两个性质不一样的协议:TCP(传输控制协议)和UDP(用户数据报协议)spa
网络层
规定了传输路线的路径(或者说是选择),并传送数据,用来处理网络上流动的数据包(网络传输最小数据单位)3d
链路层
用来处理连接网络的硬件部分,囊括全部的硬件,又名网络接口层code
在数据传输时,利用封装的方法,在HTTP数据通过发送端每一层时打上该层的首部消息,通过接收端时又逐层消去orm
就像咱们邮寄快递,寄件人在某县某市某省送出去,收件人在某省某市某县接收同样接口
其做用是把各类数据包传送给对方,传送时要知足各种条件,最重要的两个是IP地址和MAC地址
IP地址指明节点被分配到的地址,MAC地址指网卡所属的固定地址
IP地址能够和MAC地址进行配对,前者可变换,后者基本不会
一种用以解析地址的协议,能够根据通信方的IP地址反查出对应的MAC地址
由于IP之间的通讯依赖MAC地址,而通讯双方在同一个局域网的状况很小,通常要通过多台计算机和网络设备中转才能链接到,而中转时,会利用下一站中转设备的MAC地址来搜索下一个中转目标
传输的中转过程对于路由器和计算机来讲是粗略的,不管谁都没法全面掌握互联网中的细节,就像你的快递的运输细节咱们没法掌握
TCP位于传输层,提供可靠的字节流服务,可以确认数据最终是否送到对方
将大块数据分割成以"报文段"为单位的数据包进行管理传输
采用"三次握手策略"
three-way handshaking:
- 发送端发送给对方一个SYN标志的数据包
- 接收端回传一个SYN/ACK标志的数据包
- 发送端再发送一个ACK的数据包表示握手结束
若是握手中断,TCP会再次发送相同数据包
DNS可让咱们经过域名查找IP地址,或反向从IP地址查找域名
计算机既能够被赋予IP地址,也能够被赋予主机名和域名
咱们一般都使用这两个来访问其余计算机,而不是IP地址,由于前者更符合咱们的记忆习惯,可是计算机更擅长处理数字(懂吧)
URL属于URI集合
URI用字符串标识某一(互联网上)资源,而URL表示资源的地点
URI就是由某个协议方案表示的资源的定位标识符。
采用HTTP协议时,协议方案就是HTTP
标准的URI协议方案有30种左右,有专门的机构进行管理
想要表示指定的资源URI,要使用绝对URI(涵盖所有必要信息),绝对URL和相对URL
相对URL,是指从当前位置到URI的路径
格式名称 | 名词解释 |
---|---|
① 登陆信息 | 指定用户名和密码做为从服务器获取资源时必要的登陆信息,可选项(你得让服务器知道你是谁) |
② 服务器地址 | 地址是DNS可解析的名称,或IPv4地址名和IPv6地址名(你得知道服务器在哪) |
③ 服务器端口号 | 指定服务器链接的网络端口号,可选项,省略会使用默认端口号(你得知道从哪进) |
④ 带层次的文件路径 | 知道服务器上的文件路径来定位特指的资源(你得知道资源文件再服务器上怎么找) |
⑤ 查询字符串 | 对已经指定路径的资源,使用查询字符串传参来寻找想要的部分资源,可选项(开始进入搜索正题) |
⑥ 片断标识符 | 标记出已获取资源中的子资源,标记子资源的位置,可选项(找到并标记地点) |
HTTP协议用于客户端和服务器之间,若是是两台计算机的话,做为客户端和服务器端的角色可能会互换,可是就通讯线路来讲,HTTP协议是可以区分哪一个是服务器哪一个是客户端的
因此,请求一定由客户端发送,,服务器在收到请求以前不会自主响应
请求报文是由请求方法,请求URI,协议版本,可选的请求首部字段和内容实体构成的
这段请求的意思是:请求访问某台HTTP服务器上的/form/entry页面资源
从第二行开始是建立响应的日期时间,是首部字段内的一个内容
下一行空格分行,接下来就是资源实体的主体
HTTP是一个无状态协议,对发送和响应过的请求都不作持久化处理,所以能够更快地处理大量事物
可是当你在一个网站登录某帐号时,跳转到该网站其余网页时,也仍旧要保持登录状态,那保存登录状态怎么办
因而就出现了Cookie技术来管理状态