路由

vue项目的登录处理之路由守卫router.beforeEach(),用户在未登录状态下,展示的一直是登录界面。

↘锁芯ラ 提交于 2020-01-23 20:59:40
简单记录一下需求处理,当项目中的除了登录页或其它一两个页面不需要用户登录数据,其它页面均需要登录信息才能正常展示,那么就要做路由全局守卫了, 回调函数中的参数,to:进入到哪个路由去,from:从哪个路由离开,next:函数,决定是否展示你要看到的路由页面。 如下例:main.js中设置全局守卫 在main.js中,有一个路由实例化对象router。在main.js中设置守卫就是全局守卫。 如下,判断to.path当前将要进入的路径是否为登录或注册,如果是就执行next(),展示当前界面。如果不是,就弹出alert,然后移至登录界面。 这样就可实现,用户在未登录状态下,展示的一直是登录界面。 2.顺便记一下其它钩子导航守卫 全局后置钩子router.afterEach((to,from)=>{}) 只有两个参数,to:进入到哪个路由去,from:从哪个路由离。 如下,每次切换路由时,都会弹出alert,点击确定后,展示当前页面。 router.afterEach((to,from)=>{ alert("after each"); }) 5. 判断store.gettes.isLogin === false 是否登录 二.组件内的守卫 1. 到达这个组件时,beforeRouteEnter:(to,from,next)=>{} 在Admin.vue文件中,点击转到admin路由时

因特网的路由选择协议

扶醉桌前 提交于 2020-01-23 16:37:14
因特网的路由选择协议 有关路由选择协议的几个基本概念 关于“最佳路由” 不存在一种绝对的最佳路由算法。 所谓“最佳”只能是相对于某一种特定要求下得出的较为合理的选择而已。 实际的路由选择算法,应尽可能接近于理想的算法。 路由选择是个非常复杂的问题 它是网络中的所有结点共同协调工作的结果。 路由选择的环境往往是不断变化的,而这种变化有时无法事先知道。 从路由算法的自适应性考虑 静态 路由选择策略——即非自适应路由选择,需要手动添加路由表,其特点是简单和开销较小,但不能及时适应网络状态的变化。 动态 路由选择策略——即自适应路由选择,不需要手动添加路由表,其特点是能较好地适应网络状态的变化,但实现起来较为复杂,开销也比较大。 分层次的路由选择协议 因特网采用分层次的路由选择协议。 因特网的规模非常大。如果让所有的路由器知道所有的网络应怎样到达,则这种路由表将非常大,处理起来也太花时间。而所有这些路由器之间交换路由信息所需的带宽就会使因特网的通信链路饱和。 自治系统 AS(Autonomous System) 自治系统 AS 的定义:在单一的技术管理下的一组路由器,而这些路由器使用一种 AS 内部的路由选择协议和共同的度量以确定分组在该 AS 内的路由,同时还使用一种 AS 之间的路由选择协议用以确定分组在 AS之间的路由。 现在对自治系统 AS 的定义是强调下面的事实:尽管一个 AS

IP 地址与MAC硬件地址

喜夏-厌秋 提交于 2020-01-23 16:24:41
IP 地址与MAC硬件地址 我们都知道数据通信要使用IP地址加MAC地址,两个地址缺一不可,下为原理图: 1.下面介绍计算机A与计算机B通信的过程 交换机基于数据帧的MAC地址转发数据帧,路由器基于数据包的IP地址转发数据包; 数据包在传输过程不变,经过网络设备数据帧要用新的物理层(MAC)地址重新包装; MAC地址决定了数据帧在网络设备中转过程中下一站由哪个设备接收,而IP地址决定了数据包的起0点和终点。 例如图中的使用M表示MAC地址,由于计算机A所处的10.0.0.2网段与计算机B所处的12.0.0.2网段不同,所以A与B不能直接通信,需要借助路由器中转。 首先,计算机发出数据帧1,里面标明了源IP地址与目标IP地址、 源MAC地址与目标MAC地址,这样数据帧1就可以通过交换机准确传输到目标MAC地址M2,即路由器Router1处; 路由器通过查找路由表确定到12.0.0.2的网段的路径,并把该数据帧发现通向该路径的M3接口处,M3接口再对数据帧1进行封装改变源MAC地址和目标MAC地址,IP地址不变并发出数据帧2; 以此类推,最终数据帧传输到12.网段的路由器上,该路由器再通过同网段的交换机把数据帧3发送到计算机B处,完成通信。 注意 我们把数据传输过程中数据帧中不变的部分:即数据+IP地址(目标地址与源地址)称为 数据包 ; 数据包加上MAC地址(目标地址与源地址

IP 数据报

丶灬走出姿态 提交于 2020-01-23 16:18:28
IP 数据报 1.IP 数据报的格式 一个 IP 数据报由首部和数据两部分组成。(数据报也可以说是数据包) 首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的。 在首部的固定部分的后面是一些可选字段,其长度是可变的。 2.IP 数据报首部的固定部分中的各字段 从图中可看到,数据报首部可分为固定部分和可变部分,固定部分为了五行,每行32位即4个字节。 版本 ——占 4 位(第一行四个字节中0~3位),指 IP 协议的版本该 IP 协议的版本号为 4 (即 IPv4); 首部长度 ——占 4 位(第一行四个字节中4~7位),表示首部总的长度(固定+可变部分);可表示的最大数值是 15 个单位(一个单位为 4 字节)因此 IP 的首部长度的最大值是 60 字节。 区分服务 ——占 8 位(第一行四个字节中8~15位),区分服务。即该段设置了数据报的优先程度,若要想实现数据报优先传输还需要在路由器端配置相应的区分服务设置。只有在使用区分服务(DiffServ)时,这个字段才起作用。在一般的情况下都不使用这个字段 。 总长度 ——占 16 位(第一行四个字节中16~31位),指首部和数据之和的长度,单位为字节,因此数据报的最大长度为 65535 字节。总长度必须不超过最大传送单元 MTU。 标识 (identification)——占 16 位(第二行四个字节中1

IP 转发分组的流程

↘锁芯ラ 提交于 2020-01-23 16:17:44
IP 转发分组的流程 数据路由 :路由器在不同网段转发数据包; 网络畅通的条件 :数据包能去能回; 从源网络发出时,沿途的每一个路由器必须知道到目标网络下一跳给哪个接口; 从目标网络返回时,沿途的每一个路由器必须知道到源网络下一跳给哪个接口; 可以看到网段1~5对应的地址主机号都是归零的,即配置路由器端口网段地址时主机号要归零。如端口B连接的网段2地址:172.16.0.0 / 24 。 如图所示,计算机PC0 ping PC1,网络要想通,要求沿途的路由器Router0、 Router1、 Router2和Router3都必须有到 192.168.1.0/24 网络的路由(路由器中存储路径的路由表中的信息),这样数据包才能到达PC1; PC1要回应数据包给PC0,沿途所有的路由器必须有到 192.168.0.0 /24 网络的路由,这样数据包才能回来。 由于网段1和2直连路由器Router0,所以不用给Router0的路由表手动添加关于网段1和2的路径信息。但是Router0路由表内是没有与Router0非直连网段3 、4 、5的相关路径信息的,需要管理员手动添加。同理Router1直连网段2 、3,非直连网段1 、4 、5,所以需要手动添加网段1 、4 、5路径信息。这叫做 静态路由 。 举例 :如上图,PC0想要访问Router0的B端口,由于不在同一网段

虚拟互联网

…衆ロ難τιáo~ 提交于 2020-01-23 16:01:54
虚拟互联网 网络互联的设备 中间设备 又称为 中间系统 或 中继(relay)系统 。 物理层中继系统: 转发器 (repeater),可以理解为 接线器 (Hub); 数据链路层中继系统: 网桥 或 桥接器 (bridge); 网络层中继系统:路由器(router); 网络层以上的中继系统: 网关 (gateway); 网关就是到其他网段路由器接口的地址 。 网络互联设备:路由器 当中继系统是转发器或网桥时,一般并不称之为网络互连,因为这仅仅是把一个网络扩大了,而这仍然是一个网络; 网关由于比较复杂,目前使用得较少; 互联网都是指用路由器进行互连的网络; 由于历史的原因,许多有关 TCP/IP 的文献将网络层使用的路由器称为 网关 。 上图中,三台计算机想要访问互联网等其他网段必须经过网关Router1;但可以访问本网段。同时也可以为计算机设置多个网关,如图所示。 如图,PC2通过网关Router1访问互联网;也可以通过网关Router4访问互联网。 总结 :网关就像一道门,计算机的数据想要出去必须通过这道门;一台计算机可对应多个门。 某个网段的网关一般设置在连接该网段的路由器上,是路由器的一个端口地址;该网段的计算机通过网关(地址)找到该路由器并通过该路由器访问网络 梳理一下PC1上网的过程,上网的实质就是同网段或不同网段内双方的通信。当需要访问的互联网与计算机在同一网段内

IP 地址

本秂侑毒 提交于 2020-01-23 15:58:15
IP 地址 IP 地址及其表示方法 我们把整个因特网看成为一个单一的、抽象的网络。IP 地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符。 IP 地址现在由 因特网名字与号码指派公司 ICANN (Internet Corporation for Assigned Names and Numbers)进行分配 。 IP 层次结构 由于当初美国国防部一开始设计TCP/IP协议的时候,没想过把全球的计算机连接起来,所以当时设计的IP 地址只有32位,发展到如今已显得不够用了。IP地址其实就是一串数字,是一个可以直接访问公网的地址,现在已成为一种资源。所以说开发个人网站要买公网IP地址。这里讲解的是 IPv4 版本的内容,如今慢慢地往 IPv6 版本转变。 IP地址分为网络部分( 网络ID )和主机部分( 主机ID ),每一个网段属于以固定的网络地址,如图中的三个网段的 网络ID 分别为 192.168.1.0 、 192.168.2.0 、 192.168.3.0 。这样计算机只关心数据发到哪个网段的网络地址上,而不再关心具体发到某一台计算机的 主机ID 。就好像电话号码分区号是一样的,前面几位号码管地区,后面号码管该地区的特定用户。 所以同一个网段的计算机 网络ID 都一样,不同的是跟在网络ID后面的各计算机的 主机ID . IP

网络层提供的两种服务

跟風遠走 提交于 2020-01-23 15:44:04
网络层提供的两种服务 在计算机网络领域,网络层应该向运输层提供怎样的服务(“面向连接”还是“无连接”)曾引起了长期的争论。 争论焦点的实质就是:在计算机通信中, 可靠交付应当由谁来负责 ?是 网络 还是 端系统 ? 即A、B两端点通过多个路由器连接,数据在每两个路由器之间都要确认 可靠交付 (传输),还是仅在A、B两端口确认数据是否 可靠交付 。 显然如果每两个路由器之间都要确认一次数据传输的可靠性就会十分浪费性能,所以,如今 数据的可靠交付由端系统负责 。 两种服务:网络层应该向运输层提供怎样的服务? 虚电路服务 数据包服务 虚电路服务 数据包传输前先建立和确认一条虚电路,确认之后数据包不用加地址,直接通过虚电路由一端传送到另一端,这叫做 虚电路服务 。 特点 虚电路表示这只是一条 逻辑上的连接 ,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接。 请注意,电路交换的电话通信是先建立了一条 真正的连接 。因此分组交换的虚连接和电路交换的连接只是类似,但并不完全一样。 如果该虚电路断了,H1与H2不能通过其他电路传送数据,即只能通过配置好的虚电路传送数据。 数据报服务 数据包写上目标地址与原地址,通过路由器识别地址转发到相应目的地,这叫 数据报服务 。 网络层向上只提供简单灵活的、 无连接的 、 尽最大努力交付 的 数据报服务 。

vue中知识点详细总结

醉酒当歌 提交于 2020-01-23 03:51:56
总结 搭建项目 第一类是脚手架搭建 vue-cli脚手架的环境 node vue-cli 下载nodejs安装到本地 全局安装vue-cli cli安装命令 npm install -g @vue/cli 创建项目 vue create 项目名称 可以选择两种方式 第一中默认方式(不推荐) 第二种 自定义方法 选择history模式(大部分情况选择no) 其他自定义选项使用 上下键选择 空格键可以选中或取消选中 vue-cli2 的项目搭建命令 cli 安装命令 npm install vue-cli -g 创建项目的命令 vue init webpack 项目名称 第二种 webpack搭建项目 两个重要的依赖 第一个 vue-loader 第二个 vue-template-compiler 生命周期 berforeCreate() 这个是dom创建之前触发的函数 这时候还没有data和methods 所以无法调用data中的数据和methods里面的方法 created() dom创建的函数 里面不能直接获取dom 如果要在created()中获取dom 需要使用this.$nextTick() $nextTick是在dom更新完成后调用的方法 他是基于promise的一个方法 会有延迟 beforeMounte() dom 创建完成 但是还未渲染 mounted()

Vue项目开发目录结构

邮差的信 提交于 2020-01-23 03:32:21
最近做一些CI+Vue开发的简单项目,由于刚开始一直从事后端,对Vue了解不是很多,fork了团队的项目代码发现项目的文件夹很多,一时间有些懵,上网上参考了部分资料,博客园中的 放晴的天空 与 狮子爱吃草 两位的博客提供了很大的帮助,现将该部分知识做以下总结。 下图为Vue项目文件夹: 以下就项目文件夹中的各文件的作用进行介绍: ├── build/ # Webpack 配置目录 ├── dist/ # build 生成的生产环境下的项目 ├── config/ # Vue基本配置文件,可以设置监听端口,打包输出等 ├── node_modules/ # 依赖包,通常执行npm i会生成 ├── src/ # 源码目录(开发的项目文件都在此文件中写) │ ├── assets/ # 放置需要经由 Webpack 处理的静态文件,通常为样式类文件,如css,sass以及一些外部的js │ ├── components/ # 公共组件 │ ├── filters/ # 过滤器 │ ├── store/      # 状态管理 │ ├── routes/ # 路由,此处配置项目路由 │ ├── services/ # 服务(统一管理 XHR 请求) │ ├── utils/ # 工具类 │ ├── views/ # 路由页面组件 │ ├── App.vue # 根组件 │ ├──