自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(135)
  • 收藏
  • 关注

原创 wireshark-----抓Http协议

也可以选中数据,右键选择“追踪流”-----“HTTP流”查看相关信息。3、在搜索框输入tcp (里面的200代表成功)http底层用到了tcp协议。2、打开启动wireshark。

2024-08-22 18:25:51 163

原创 wireshark-----TCP连接断开的四次挥手协议

当我们进行完三次握手的时候,连接完成了,那么我想要把这个连接断开,这就叫四次挥手。建立连接之后,服务器主动断开的。

2024-08-22 18:16:51 280

原创 wireshark-----TCP连接的3次握手协议

云服务器一般开放的是22端口,我的电脑也要有个端口监听,用这个端口去连接22端口云服务器,云服务器那边也会向我这个开放的端口回复相应的数据,我的电脑启用随机的端口,这个端口响应、回复都是基于同一个端口,三次握手同一个端口,也就是Src Port(Source Port)显示的内容。③包括请求的序列号,响应的序列号,这个序列号其实就是当我发一个信息给你,你回一个信息给我,我们约定一个数字,就相当于一个业务序列号了,就是我发送一个1过去,你回复一个1,证明是这笔业务本次的一个请求,用这个来确定。

2024-08-22 17:34:03 360

原创 wireshark-----ICMP协议

选中一条信息,看下方内容,第一行代表物理层的基本信息,第二行是链路层的基本信息(原物理地址,目标物理地址),第三行是基于IP协议的(原ip和目标ip),第四行是关于ICMP的相关描述。先启动一下wireshark,在命令窗口输入:ping 网关(刚刚查到的网关),可以看到wireshark中已经有了抓的包。代表我发ping数据包的时候,发到网关的时候,要检查网关的数据有没有被篡改过,校验完整性。代表我们发送的请求是request,8是代表发的请求包,0是代表响应。下面的就是id和序列号都会有相应的描述。

2024-08-20 22:25:50 157

原创 wireshark-----ARP协议

当你想上网,第一次去找网关的时候,因为你是广播的,黑客也会收到,此时黑客比网关给你确认消息的速度要快,这个时候你的电脑默认黑客的电脑是网关。那么此时你拿到的MAC地址是黑客的MAC地址,此时你是上不了网的,这个时候就是ARP欺骗。

2024-08-20 22:06:04 265

原创 wireshark----过滤器使用

你在你的电脑上访问www.jingdong,首先要跟京东的服务器建立连接,建立连接也就是发送个请求过去,syn表示连接请求的意思,如果收到了你的请求,他给你回复一个ack也就是确认的意思。6、比方说我们拨号成功,我们的电脑跟京东的服务器三次连接成功之后,我要发数据,发数据的话连接成功,每发一次数据或者说每做一件事情,我们会带一个标志叫fin标志,表示我把数据发给你,发完成了。9、在网络安全定位ip的时候还有一个方式叫ip.addr,表示只要ip在==后面,都显示出来。arp,http,dns或者是udp。

2024-08-20 21:13:14 388

原创 Wireshark抓包入门操作

5、点击“捕获”中的“选项”,在弹出的窗口中勾选上“在所有接口上使用混杂模式”(意思就是所有经过你网卡的所有数据包都能被抓到,它不会去校验你的MAC地址是否合法,方便网络安全人员在做信息排查的时候一个重要选项)2、输入ipconfig,可以看到显示以太网,自己电脑的ip和网关。6、点击“继续,不保存”,代表把显示的包都清掉,重新开始抓包。不勾选的话代表只接收正确的发到你网卡的数据,其他的包抓不到。1、win+R打开命令窗口,输入cmd进行回车。4、“文件”下方的按钮是红色,表示正在抓包。

2024-08-20 20:21:18 124

原创 抓包-----WireShark介绍

wireshark(前身Ethereal)是一个网络包分析工具,该工具主要是用来捕获网络数据包,并自动解析数据包,为用户显示数据包的详细信息,供用户对数据包进行分析。WireShark在网络安全当中是非常重要的,比如你的电脑被黑了,这个时候就要分析原因,是谁黑了你的电脑,他的IP是什么?如果你的电脑是Kali Linux系统,它自带wireshark工具,而Windows系统中默认没有安装该工具。普通使用者:学习网络协议的相关知识。网络管理员:用来检测网络问题。开发人员:为新的通讯协议除错。

2024-08-20 18:41:42 194

原创 vue---网络请求跨域解决方案

网络请求会产生跨域,不是每一个网络请求的地址或者说每个接口地址都一定能拿到数据。JS采取的是同源策略,同源策略是浏览器的一项安全策略,浏览器只允许js代码请求和当前所在服务器域名,端口,协议相同的数据接口上的数据,这就是同源策略。也就是说,当协议,域名,端口任意一个不相同时,都会产生跨域问题。

2024-08-18 11:24:53 301

原创 vue---Axios网络请求封装

封装是因为axios使用率实在是太高了,为了程序后期的可维护性,我们会把同样的东西放在一起,后期找起来会很方便,这就是封装的主要意义。在日常应用过程中,一个项目中的网络请求会很多,此时一般采取的方案是将网络请求封装起来。拦截器最常用,因为在发送网络请求之前和获取到网络请求给我们返回的数据之前都可能需要把这个请求给拦截一下,做一些额外的处理。拦截分为两类:①发送数据之前 ②获取数据之前。

2024-08-17 22:12:47 433

原创 vue---Axios网络请求

在网页中看到控制台显示参数缺失,请传递完整参数,此时参数是对的,出现这种问题是因为网络请求接收参数的方式并不是对象类型,而是一个字符串类型,那么这个时候就需要做一个数据的转换。因为挂载全局是把axios挂载到了全局,给它起了新的名字叫$axios,所以写的时候,直接读$axios就行了。在vue当中使用比较方便的网络请求,Axios是一个基于promise的网络请求库,Axios的应用是需要单独安装的。1、在终端输入cnpm install --save axios,库比较小,安装比较快。

2024-08-17 20:33:58 583

原创 vue---引入第三方(轮播图)

可以在网上查找图片,把图片另存为到vue-demo---->src---->assets当中,可以在程序目录中看到assets下已经有了图片。②vue官方文档:https://swiperjs.com/vue(如何在vue当中使用swiper)④可以在https://v2.cn.vuejs.org中找到资源列表下的Awesome vue。③查找其他相关文件可以输入网址:github.com在搜索框输入vue-swiper。3、打开components中的HelloWorld.vue文件,

2024-08-17 13:57:44 255

原创 vue---组件生命周期

我们可以打开京东,或者是其他的商品界面,可以看到有很多的小块,商品没有出来,小块就代表这些组件已经渲染完成了,但是组件中没有数据,数据是通过网络请求来的,所以我们把网络请求放在mounted当中,因为对于用户来说,页面能显示出来和页面中显示之后,一定要把数据显示出来是两个概念。把页面中不需要的东西,消耗性能的东西都可以删掉,比如说定时器,定时器很消耗性能,尤其是那种循环的定时器,不停的执行,当你的组件都不存在,定时器也就没有意义了,所以可以在beforeUnmount函数当中把定时器清理掉。

2024-08-17 11:35:38 351

原创 vue---自定义事件组件交互

因为在MyComponent.vue的methods当中写了this.$emit("onEvent",this.message)传递了this.message数据,就相当于给到这个自定义事件onEvent中,变成了onEvent当中的参数,自定义事件可以在组件中反向传递数据,prop可以将数据从父组件传递到子组件,反向操作就可以利用自定义事件$emit实现。在MyComponent.vue当中写的onEvent是字符串,在App.vue当中当做事件来看,这种就叫自定义式事件。

2024-08-17 10:30:52 141

原创 vue---props组件交互

App.vue和MyComponent.vue两个组件之间是父子集关系,App包含了MyComponent组件,MyComponent组件被App.vue组件所引用着,那他们之间怎么互相传递数据?Prop传递参数没有类型限制,可以是String、Number、Boolean、Array、Object、Function。组件与组件之间是存在交互的,Prop是可以在组件上注册的一些自定义attribute。,比如现在传递一个age。

2024-08-16 22:25:04 121

原创 vue---组件基础

整个页面都是由组件组成的,组件与组件之间的引用关系会形成一个组件的组织。也就可以说,像我们刚刚说的MyComponent组件里面也可以添加组件,并不一定非要在App.vue中写组件。如果其中有一个组件出现问题,不一定会影响其他的组件。vue单文件组件(又名*.vue文件,缩写为SFC)是一种特殊的文件格式,它允许将Vue组件的模板、逻辑与样式封装在单个文件中。1、找到App.vue(根组件,所有的组件都是基于它一层层加载的)如果在style中添加此属性,就代表当前样式,只在当前组件中生效。

2024-08-16 20:38:53 136

原创 vue---表单输入绑定

对于单选框(radio)、复选框(checkbox)和文件上传等情况,change事件也会在用户选择或取消选择时触发。1、在默认情况下,v-model在每次input事件触发后将输入框的值与数据进行同步。(‌语法糖(Syntactic Sugar)是指‌计算机语言中添加的某种语法,这种语法对语言的功能并没有实际影响,但更方便程序员使用。,根据控件类型自动选取正确的方法来更新元素,v-model本质上是语法糖。3、例子:当你在输入文本框中输入内容,下方显示跟输入内容一样的内容。5、添加多个v-model。

2024-08-16 17:18:57 212

原创 vue---事件处理(v-on)

事件处理逻辑会更为复杂,所以直接把JavaScript代码放在v-on指令中是不可行的,因此v-on还可以接收一个需要调用的方法名称。2、用法为:v-on:click="methodName"或者@click="methodName"1、v-on(通常缩写成@符号)来监听DOM事件,并在触发事件时执行一些JavaScript。此时页面出现一个按钮,按钮上面显示点击:counter=1,点击按钮,数字逐渐加1。

2024-08-14 14:27:20 166

原创 vue---列表渲染(v-for)

1、v-for是把一个数组映射成一组元素,可以用v-for指令基于一个数组来渲染一个列表,v-for需要使用item in items形式的特殊语法,其中items是源数据数组,而item则是被迭代的数组元素的别名。(可以理解为,item是数组内的每一个元素,items是数组的名字)2、此时是含有数组项三个,如果此时在进行添加一个数组项或者是数据项的顺序被改变,只需要重新渲染改变的就可以了,可以看出性能也是提高的,不必全部进行渲染,也就是“② index代表每一条数据的下标,数组的下标是唯一的。

2024-08-14 11:27:27 252

原创 Vue---条件渲染(v-if/v-show)

可以理解为,如果flag为true时就会进行渲染,显示出来内容,如果flag为false时,就不会进行渲染,不会显示内容,elements中也不会有这个元素,直到flag为true,才会进行渲染也就是显示内容。② v-if也是惰性的,如果在初始渲染时条件为假,则什么也不做---直到条件第一次变为真时,才会开始渲染条件块。③v-show就简单的多---不管初始条件是什么,元素总是会被渲染,并且只是简单地基于CSS进行切换。(条件很少改变,如果用v-show每次都要渲染,渲染的速度会慢一点)。

2024-08-14 10:46:56 329

原创 Vue---模板语法

④main.js是主入口文件,它的入口文件就是public with the main,是程序的入口,main.js中的内容就相当于程序的入口,有引入Vue,挂载到App当中进行显示等等。③App.vue是主入口的组件,Vue是组件化开发的,组件与组件之间互相是有引用关系的,可以把App.vue理解成根组件,所有的组件都是从这里开始的,都是通过它来进行引入并且显示的。②components代表公共组件,在此存放的就是Vue的组件,因为Vue是组件化开发的。根据上篇文章依次进行选择。上面的语句也就可以写成。

2024-08-13 22:13:11 155

原创 Vue安装

第二步按上下按键,选择Babel和Progressive Web App(PWA) Support,Linter/Formatter代表代码规范化,取消掉避免麻烦。Vue.js开发的标准工具,VueCLl是一个基于Vue.js进行快速开发的完整系统。首先打开电脑的命令窗口:win+R快捷键,输入cmd,打开命令窗口输入以下命令。①vue-demo是创建的vue的文件名字,可以用 - 连接,③首先出现的是选择3版本,2版本,手动选择。下载完成之后,输入node -v查看,npm -v查看。

2024-08-13 21:14:14 387

原创 JavaScript----------------作为关联数组的对象

由于用户是在运行时输入股票名字,不可能提前知道属性名。可以使用[ ]操作符,因为它使用字符串值(字符串是动态的,可以在运行时修改)而不是标识符(标识符是静态的,必须硬编码到程序中)来命名属性。在通过方括号([ ])这种数组表示法访问对象属性时,属性名是通过字符串来表示的。字符串是一种JavaScript数组类型,因此可以在程序运行期间修改和创建。这段代码读取并拼接了customer对象的属性address0、 address1、address2和address3。

2024-04-18 21:57:23 259

原创 JavaScript-------------查询和设置属性

②如果使用方括号,方括号中的值必须是一个表达式,其结果为包含目的属性名的字符串。3. 创建或设置属性,可以使用点或方括号, 只是要把它们放到赋值表达式的左边。1. 要获得一个属性的值,可以使用点(.)或方括号( [ ] )操作符。①如果使用点操作符,右边必须是一个命名属性的简单标识符。求值为一个字符串或一个可以转换为字符串或符号的值。2.左边是一个表达式,其值为一个对象。时,其中的表达式必须。

2024-04-18 18:54:44 174

原创 JavaScript------------创建对象

一、对象字面量对象可以通过对象字面量、new关键字和Object.create()函数来创建。一、对象字面量1. 对象字面量的最简单形式是包含在一对花括号中的一组逗号分隔的“名:值”对。属性名是 JavaScript标识符或字符串字面量(允许空字符串)。属性值是任何JavaScript表达式,这个表达式的值(可以是原始值或对象值)会变成属性的值。对象字面量最后一个属性后面的逗号是合法的。2.对象字面量是一个表达式,每次求值都会创建并初始化一个新的、不一样的对象。

2024-04-15 22:36:50 959

原创 JavaScript------------import和export

5. JavaScript模块中的值是私有的,除非被显式导出,否则其他模块都无法导入。export指令就是为此而生的,它声明把当前模块中定义的一个或多个值导出,因而其他模块可以导入这些值。4.import指令用于从另一个JavaScript代码文件中导入一个或多个值,并在当前模块中为这些值指定名字。3. 如果要在一个模块中使用另一个模块中定义的值(如函数或类),唯一的方式就是在定义值的模块中用。让一个JavaScript模块中定义的值可以在另一个模块中使用。,在使用值的模块中使用。

2024-04-15 15:36:06 285

原创 javascript-----------for/of

1. 对象(默认)是不可迭代的,运行时尝试对常规对象使用for/of会抛出TypeError。2. 想迭代对象的属性,可以使用for/in循环或者基于Object.keys()方法的结果使用for/of3.想迭代每个键对应的值,可以使用基于Object.values()方法的结果使用for/of4.既想要对象属性的键,也想要属性的值,可以基于Object.entries()和解构赋值来使用for/of。

2024-04-14 18:16:17 238

原创 Javascript-------------in

1. 定义:如果指定的属性在指定的对象或其原型链中,返回。将一个属性的值赋值为undefined,而没有删除它,则。检查它(或其原型链)是否包含具有指定名称的属性的对象。①使用delete运算符删除了一个属性,则。类型的属性名或者数组索引(非。类型将会强制转为字符串)。5. 对delete或值为。构造函数创建的字符串,但。运算符对所删除属性返回。

2024-04-14 16:42:56 121

原创 第三章-----------对象到原始值转换

如果一个操作数是对象,另一个操作数是原始值,则这两个操作符会使用无偏好算法将对象转换为原始值,然后再比较两个原始值。对象到数值的转换首先使用偏数值算法把对象转换为一个原始值,然后再把得到的原始值转换为数值。空数组转换为空字符串。对象是复合值,且多数对象不能真正通过一个原始值来表示,因此valueOf()方法默认情况下只返回对象本身,而非返回原始值。接收数值参数的内置JavaScript函数和方法都以这种方式将对象转换为数值,而除数值操作符之外的多数JavaScript操作符也按照这种方式把对象转换为数值。

2024-04-08 22:20:13 542

原创 第三章-----------类型转换

②toExponential()使用指数记数法,将数值转换为字符串,结果是小数点前1位,小数点后为指定位数(意味着有效数字个数比你指定的值多1位)。2. 除null和undefined之外的所有值都有toString()方法,这个方法返回的结果通常与String()函数返回的结果相同。②字符串开头和末尾可以有空格,但开头或末尾任何不属于数值字面量的非空格字符,都会导致字符串到数值的转换产生NaN。parseInt()接收可选的第二个参数,用于指定要解析数值的底(基)数,合法的值是2到36。

2024-03-10 20:45:52 371

原创 第三章------------不可修改的原始值与可修改的对象引用

对象不是按值比较的,两个不同的对象即使拥有完全相同的属性和值,它们也不相等。同样,两个不同的数组,即使每个元素都相同,顺序也相同,它们也不相等。例如,在比较两个不同的字符串时,当且仅当这两个字符串长度相同并且每个索引的字符也相同时,JavaScript才认为它们相等。5. 对象有时候被称作引用类型(reference type),对象值就是引用,对象是按引用比较的。对象不同于原始值,对象是可修改的,即它们的值可以改变。,即两个值只有在它们的值相同的时候才是相同的。①数值和布尔值:修改一个数值的值没什么用。

2024-03-08 21:26:37 361

原创 第三章------------全局对象

对象对浏览器窗口中的所有JavaScript代码而言,充当了全局对象的角色。这个全局的Window对象有一个自引用的window属性,可以引用全局对象。Window对象定义了核心全局属性,也定义了其他一些特定于浏览器和客户端JavaScript的全局值。③构造函数:Date()、RegExp()、String()、Object()、Array()的属性,其值为全局对象本身,因此在Node程序中始终可以通过global来引用全局对象。1. 全局对象的属性是全局性定义的标识符,来引用它们的全局对象。

2024-03-08 20:46:46 396

原创 第三章----------符号(Symbol)

可以将调用Symbol()取得的符号值,安全地用于为对象添加新属性,而无须担心可能重写已有的同名属性。在使用符号时,我们有时希望它们对代码是私有的,从而可以确保你的代码的属性永远不会与其他代码的属性发生冲突。传给Symbol.for()的字符串会出现在toString()(返回符号值)的输出中。Symbol.for()函数接收一个字符串参数,返回一个与该字符串关联的符号值。否则,就会返回已有的符号。Symbol()永远不会返回相同的值,而在以相同的字符串调用时Symbol.for()始终返回相同的值。

2024-03-08 13:24:28 409

原创 第三章--------null与undefined

实际编码中,尽量避免使用null和undefined,如果需要给某个变量或属性赋这样一个值,或者需要向函数传入或从函数中返回这样一个值,通常使用null。④多数编程语言都有一个与JavaScript的null等价的值,比如NULL、nil或None。③因为它们俩都是假性值,在需要布尔值的情况下,它们都可以当作false使用。可以用undefined表示一种系统级别、意料之外或类似错误的没有值。,表明可以将null看成一种特殊对象,表示“没有对象”。可以用null表示程序级别、正常或意料之中的没有值。

2024-03-07 20:23:56 358

原创 第三章----------布尔值

=比较o和null,求值结果要么是true要么是false。第二种情况没那么严格,只要o不是false或任何其他假性值(如null或undefined),if语句的主体就会执行。转换为布尔值false:undefined、null、0、-0、NaN、" "(跟false合称为假性值falsy)在任何 JavaScript期待布尔值的时候,假性值都可以当作false,而真性值都可以当作true。5. 布尔值有一个toString()方法,可用于将自己转换为字符串"true"或"false"。

2024-03-07 19:46:29 412

原创 Navicat连接Mysql

2024-03-06 14:21:41 367

原创 如何将mysql卸载干净

五、删除HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL文件夹,如果没有可以不用删除了。四、删除注册表:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL文件夹。七、删除C:\Documents and Settings\All Users\Application Data\MySQL下的文件夹,一定要删。

2024-03-06 14:15:17 420

原创 第三章--------文本---字符、码点和字符串

JavaScript中表示文本的类型是String,即字符串。字符串是16位值的不可修改的有序序列,其中每个值都表示一个Unicode字符。字符串的length属性是它包含的16位值的个数。JavaScript的 字符串(以及数组)使用基于零的索引,因此第一个16位值的索引是0,第二个值的索引是1,以此类推。空字符串是长度为0的字符串。JavaScript没有表示单个字符串元素的专门类型。要表示一个16位值,使用长度为1的字符串即可。

2024-03-04 14:48:09 832

原创 第三章--------类型、值和变量---数值

计算机程序通过操作值或文本来工作,编程语言中这些可以表示和操作的值被称为类型。类型可以分为两类:原始类型(不可修改)和对象类型(可修改)。原始类型:数值、文本字符串、布尔值、null、undefined、symbol(ES6新增)只有null和undefined是不能调用方法的值。其余不是原始类型的值都是对象。普通的JavaScript对象是一个命名值得无序集合。特殊的一个对象,叫做数组。数组表示一个数字值的有序集合。函数和类也是特殊的对象。

2024-03-03 17:15:28 869

原创 第二章----------词法结构

如果你想在 JavaScript程序中使用Unicode字符,应该保证使用自己的编辑器或其他工具对自己的源代码执行Unicode归一化,以防其中包含看起来一样但实际不同的标识符。Unicode转义序列也可以出现在注释中,但因为注释会被忽略, 所以注释中的转义序列会被作为ASCII字符处理,不会被解释为 Unicode。很大程度上,JavaScript也忽略换行符。在JavaScript中,标识符用于在JavaScript代码中命名常量、变量、属性、函数和类,以及为某些循环提供标记(label)。

2024-02-22 17:39:48 843

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除