自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 nginx解决跨域问题

使用nginx解决跨域问题注意点最简单的解决方法,就是把浏览器设为忽略安全问题,设置–disable-web-security。不过这种方式开发PC页面到还好,如果是移动端页面就不行了例子原先:调试页面是:http://192.168.1.100:8080/请求的接口是:http://ni.hao.sao/api/get/info步骤一:请求的接口是:http://192.168.1.100:8080/api/get/info改步骤即可解决跨域问题步骤二:安装好Nginx后,去

2021-05-13 17:19:49 317

原创 GraphQl

GraphQL介绍GraphQL是Facebook开发的一种数据查询语言,并于2015年公开发布,它是REST API的替代品GraphQL既是一种用于API的查询语言也是一个满足数据查询运行时,GraphQL对API中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,更容易随着时间推移而演进官网 - https://graphql.org/特点请求需要的数据,不少不多获取多个资源,只用一个请求描述所有可能类型的系统,便于维护,根据需求平滑演进

2020-12-15 09:10:58 220

原创 Vuex

Vuex概述Vuex是实现组件全局状态(数据)管理的一种机制,可以方便的实现组件之间的数据共享使用Vuex管理数据的好处:能够在vuex中集中管理共享的数据,便于开发和后期进行维护能够高效的实现组件之间的数据共享,提高开发效率存储在vuex中的数据是响应式的,当数据发生改变时,页面中的数据也会同步更新Vuex的基本使用使用Vuex完成计数器案例打开刚刚创建的vuex项目,找到src目录中的App.vue组件,将代码重新编写如下:<template> &l

2020-11-16 20:03:54 142

原创 React

React概述英文官网: https://reactjs.org/中文官网: https://doc.react-china.org/特点Declarative(声明式编码)Component-Based(组件化编码)Learn Once, Write Anywhere(支持客户端与服务器渲染)高效单向数据流基本使用<!DOCTYPE html><html lang="en"><head> <meta charset="UT

2020-11-16 20:02:56 251

原创 Vue项目(电商管理后台)

电商项目基于Vue初始化项目项目概述电商后台管理系统的功能电商后台管理系统的开发模式(前后端分离)电商后台管理系统的技术选型前端项目技术栈VueVue-routerElement-UIAxiosEcharts后端项目技术栈Node.jsExpressJwtMysqlSequelize项目初始化前端项目初始化安装Vue脚手架通过脚手架创建项目配置路由配置Element-UI:在插件中安装,搜索vue-cli-plugin-

2020-11-12 17:45:00 1399 1

原创 Vue

VueVue概述Vue:渐进式JavaScript框架声明式渲染 -> 组件系统 -> 客户端路由 -> 集中式状态管理 -> 项目构建官网:https://cn.vuejs.org/v2/guide易用 - 熟悉HTML、CSS、JavaScript知识后,可快速上手灵活 - 在一个库和一套完整框架之间自如伸缩高效 - 10kb运行大小,超快虚拟DOMVue基本使用实际案例<!DOCTYPE html><html lang="en"

2020-11-05 18:42:30 358

原创 ECMAScript6

ES6ECMAScript和JavaScript的关系是,前者是后者的规格,后者是前者的一种实现在webstrom中使用时需要配置流程图babel是什么是一个工具链,主要用于在旧的浏览器或环境中奖ECMAScript2015+代码转换为向后兼容版本的JavaScript代码转换语法Polyfill实现目标环境中缺少的功能源代码转换安装babel先安装cnpmnpm install -g cnpm --registry=https://registry.np

2020-10-29 15:37:16 252

原创 Buffer(缓冲器)

Buffer(缓冲器)源码'use strict';const { Array, ArrayIsArray, Error, MathFloor, MathMin, MathTrunc, NumberIsNaN, NumberMAX_SAFE_INTEGER, NumberMIN_SAFE_INTEGER, ObjectCreate, ObjectDefineProperties, ObjectDefineProperty, ObjectGetOwn

2020-09-29 17:32:20 2645

原创 异步钩子

异步钩子可以通过async_hocks模块提供一个API来跟踪异步资源const async_hooks = require('async_hooks');异步资源表示具有关联回调的对象,可以多次调用此回调,例如:'connection’事件net.createServer(),或者只是一次fs.open()。还可以在调用回调之前关闭资源,AsyncHook并没有并且区分这些不同的情况,而是将他们表示为作为资源的抽象概念如果Workers(类),每一个线程都有一个独立的线程,async_hook

2020-09-24 19:59:59 312

原创 canvas(画布)

HTML5canvas是什么HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像画布是一个矩形区域,我们可以控制其每一像素canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法注意事项:canvas 元素本身是没有绘图能力的。所有的绘制工作必须在 JavaScript 内部完成不同于img元素, "canvas"元素需要有闭合标签 canvas设置画布的大小直接在html标签中设置width和height属性或者使用JavaScript来指

2020-09-14 18:28:50 507

原创 京东投票

京东投票打开项目‘$ yarn install / $ npm install’ : 跑环境(把项目依赖的插件进行安装)‘$ node admin.js’:启动服务(把自己的计算机作为服务器,创建一个指定端口的服务,来管理后台程序 - 后台程序会根据客户端请求的需求,把对应的数据和业务逻辑实现)API.TXT :API接口文档真实项目中,后台开发人员会给前端开发人员提供一个技术文档(接口文档),文档中描述了前端需要调取后台的某些接口实现的某些功能,并且标注了请求的地址、请求

2020-09-14 14:48:43 496 1

原创 FETCH中的基础语法以及封装自己的Ajax库

FETCH中的基础语法注意:Fetch不是ajax,它是为了代替AJAX,是JS中内置的API,基于FETCH可以实现客户端和服务端的信息通信FETCH是ES2018规范中新增的API,所以浏览器的支持度不是特别好(可以基于BABEL的最新语法解析包,把它进行解析),想要兼容性好一些,需要使用“Fetch polywill”使用Fetch发送请求fetch('/url',{ method:'GET', //设置请求头 h

2020-09-09 10:47:04 338

原创 axios的请求合并以及参数配置

主流Ajax库下载地址Using npm:$ npm install axios --saveUsing bower:$ bower install axiosUsing cdn:‘script’ src=“https://unpkg.com/axios/dist/axios.min.js”>‘/script’相关文档http://www.axios-js.com/docs/axios:它是一个库,基于PROMISE管理的AJAX库提供了对应请求方式的方法(get/post

2020-09-08 11:06:57 1985

原创 Ajax三级联动对比jQuery三级联动

Ajax三级联动<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>三级联动</title></head><body> <!--三

2020-09-07 15:51:23 95

原创 实现跨域访问

实现跨域访问同源策略收到三种行为限制:Cookie、LocalStorage和IndexDB无法读取DOM无法获取AJAX请求不能发送同源:三个相同(协议、域名、端口号)域名是什么又称网域访问的URL网址:网络协议 + 域名(IP地址) + 端口号 + 资源路径同源:网络协议相同、域名以及端口号相同不同源:域名不相同:完全跨域域名相同,端口号不同:跨子域互联网默认原则:同源策略(不允许跨域访问)跨域是什么当一个资源从与该资源本身所在的服务器不同的域或端口请求一个资源.

2020-09-06 16:22:48 203

原创 Jquery中的Ajax

jQuery中的AjaxjQuery不仅对JavaScript语言进行了封装,也对Ajax异步交互进行了封装,load()方法get()方法和get()方法和get()方法和post()方法、$ajax()方法$getScript()方法getJSON()方法ajaxStart()和ajaxStop()方法ajaxComplete()事件、ajaxSend()事件、ajaxError()方法和ajaxSuccess()事件load()方法url:请求HTML页面的url地址data

2020-09-05 18:57:55 103

原创 Ajax的基本用法

### 同步交互发送一个请求,需要等待返回,然后才能发送下一个请求异步交互发送一个请求,不需要等待返回,就能发送下一个请求异步交互优势用户操作无需像同步交互必须等待结果异步交互只需要与服务器端交换必要的数据内容,而不是将所有数据全部更新异步交互对带宽造成的压力相比于同步交互更小通过Ajax实现异步交互不需要任何第三方插件,只要浏览器支持JavaScript语言即可实现异步交互的劣势异步交互破坏了浏览器原有的前进和后退机制如果后面逻辑的执行依靠前面逻辑执行的结果的话,异步交互可

2020-09-01 21:04:23 137

原创 HTTP各种特性总览2.0

### 资源验证缓存是如何操作的验证头Last-Modified上次修改时间配合If-Modified-Since或者If-Unmodified-Since使用对比上次修改时间是否需要重新验证Etag数据签名(标识符)配合If-Match或者If-None-Match使用对比资源的签名判断是否使用缓存Cookie通过Set-Cookie设置下次请求自动会带上键值对,可以设置多个Cookie属性max-age和expires设置过期时间Secure只是ht

2020-08-26 22:20:50 178

原创 HTTP各种特性总览

### HTTP客户端最简单的便是浏览器CORS跨域请求的限制发送和请求都可以实现,本质问题在于浏览器允不允许,浏览器自动拦截,并不是请求和发送的错误解决办法:设置请求头解决办法2.0:设置一个“src”浏览器允许链接地址跨域CORS跨域限制以及预请求验证允许方法GETHEADPOST允许Content-Typetext/plainmultipart/form-dataapplication/x-www-form-urlencoded其它限制请求头

2020-08-25 23:36:44 174

原创 HTTP简介

## 网络协议分层低三层物理层主要作用是定义物理设备如何传输数据数据链路层在通信的实体间建立数据链路连接网络层为数据在结点之间传输创建逻辑链路传输层向用户提供可靠的端到端(End-to-End)服务传输层向高层屏蔽了下层数据通信的细节应用层为应用软件提供了很多服务构建于TCP协议之上屏蔽网络传输相关细节http的三次握手http请求可并发防止客户端开启无用的连接URIUnifrom Resourse Identifier/统一资源标识符用来唯

2020-08-24 23:13:33 116

原创 跨域资源共享

## 跨域资源共享CORS是什么跨域资源共享。新增了一组HTTP首部字段,允许服务器声明哪些源站有权限访问哪些资源,浏览器首先使用OTIONS方法发起一个预检请求,从而获知服务端是否允许该跨域请求,服务端确认允许后,才发起实际的HTTP请求,在预检请求的返回中,服务器端也可以通知客户端,是否需要携带身份凭证应用于三个场所:简单请求、预检请求、认证请求简单请求是什么满足下列条件便是:使用下列请求方法之一:GET、POST或HEAD不得人为设置下列集合之外的其它首部字段:Accept、Acc

2020-08-21 23:29:36 122

原创 Cookie

## CookieCookie是什么是服务器端发送到用户浏览器并保存在本地的一小块数据,会在浏览器下次向统一服务器再发起请求时被携带并发送到服务器上通常,Cookie用于告知服务器端两个请求是否来自同一浏览器,如保持用户登录状态Cookie曾一度用于客户端数据的存储,因当时并没有其它合适的存储办法而作为唯一的存储手段无状态:第一次发送请求后,不知道当时的结果(第一次发送请求之后的结果)Cookie的作用域Domain和Path标识定义了Cookie的作用域Domain标识指定了哪些主

2020-08-20 19:28:24 97

原创 HTTP缓存

## HTTP的缓存机制私有缓存只能用于单独用户缓存是什么缓存就是一种保存资源副本并在下次请求时直接使用该副本的技术缓存需要合理配置,因为并不是所有资源都是永久不变的(有生命周期)带宽:可以理解为所耗用的流量的大小缓存的优势缓解服务器端的资源消耗和运作压力,提升服务器的整体性能减少服务器端资源加载的延迟,进而减少显示某个资源所用的时间减少对带宽造成的压力,避免网络阻塞问题的出现Web站点变得更具有响应性缓存的应用常见的HTTP缓存只能存储GET响应检索请求的成功响

2020-08-19 20:35:36 117

原创 HTTP消息

MIME类型多用途internet邮件扩展类型,是一种标准化的方式来表示文档的性质和格式浏览器通常使用MIME类型(不是文件扩展名)来确定如何处理文档,因此服务器设置正确以将正确的MIME类型附加到响应对象的头部是非常重要的text:表示文件时普通文本image:表示某种图像audio:表明是某种音频文件video:表明是某种视频文件application:表明某种二进制数据HTTP/2.0HTTP/1.0报文上的一些缺点消息头不像消息主体一样被压缩(长度)重复传输问题无法复.

2020-08-18 20:33:05 164

原创 HTTP是什么

HTTP是什么全称HyperText Transfer Protocol,称为超文本传输协议,最为广泛的一种网络协议是Web进行数据交换的基础,是一种“客户端-服务器端”协议最初的目的是提供一种发布和接收HTML页面的方法HTTP协议历史与标准0.9版本:1991,严重设计缺陷,只支持GET方法,不支持MIME类型1.0:1996,支持多种方法1.0+:支持持久连接、虚拟主机、代理连接等新特性1.1:1999,校正HTTP设计缺陷,性能优化,删除一些不好的特性2.0:HTTP协议的性

2020-08-17 19:32:13 1130

原创 CSS3语法自动轮播图

动态3d轮播图笔记静态效果[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AJJfkJrU-1597649246903)(https://s1.ax1x.com/2020/03/25/8xUF1I.png)]实现代码:html部分<div class="container"> <div class="box"> <ul class="active"> <li

2020-08-17 15:29:44 278

原创 博客系统

项目要求a. 前台和后台的页面布局前台要求有首页、列表页、详情页面、登录、注册后台要求有登录页面、列表、添加修改页面页面要求简洁、美观、大方b. 后台功能要求前台注册用户在后台的分页展示后台可以对分类进行管理后台可以对文章进行管理后台可以针对文章的评论进行展示后台需要登录才能进入后台管理系统c. 前台功能要求首页按照分类展示对应的最新几条文章列表页可以根据不同的分类进行文章列表的切换详情页在登录的前提下,可以对文章进行评论(未实现,jQuery可能出问题了)前台用户可

2020-08-13 15:54:09 237

原创 樱花雨

CSS部分html, body{ width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;}.container{ width: 100%; height: 100%; margin: 0; padding: 0; background-color: #000000;}jquery(jquery.min.js)var RENDERER = { INIT_CHERRY_BLOS

2020-07-13 21:57:39 2139 1

原创 英雄管理系统

CSS内容add.html<!DOCTYPE html><html lang="zh-cn"><head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1" /&g

2020-07-13 21:52:10 874

原创 cookie工作流程

类比于后台服务器的使用//登录接口app.get('/login',(req,res)=>{ //假如现在这里已经验证了账号和密码,是正确的,是可以登录的 //服务器就会吧cookie响应回去 res.writeHead(200,{ 'Content-Type':'text/plain; charset=utf-8', "Set-Cookie":'userid=123456' }) res.end()})//查询接口a

2020-07-13 21:40:50 225

原创 同源与不同源

同源 - 协议和地址和端口都一样不同源 - 协议和地址和端口,只要有一个不同就不同源解决跨域问题//设置响应头,允许资源被访问/共享res.setHeader(‘Access-Control-Allow-Origin’,’*’)//表示所有的请求路径都可以请求这个接口//中间件//使用中间件的方式来设置资源共享,这样的话就不用在每一个接口里设置了app.use((req,res,next)=>{//在这里设置响应头,允许资源共享res.setHeader(‘Access-Contro

2020-07-12 22:02:19 1268

原创 简易的app

//导包const express = require('express')const bodyParser = require('body-parser')const path = require('path')var multer = require('multer')const { cpuUsage } = require('process')const { fstat } = require('fs')//用包创建一个文件夹var upload = multer({data:'up

2020-07-12 21:59:21 1262

原创 post方法

接口 - 用户登录请求地址 - /login请求方式 - post请求参数 - username password返回值 - 登陆成功/登陆失败//导包const express = require('express')const body = require('body-parser')const bodyParser = require('body-parser')//创建服务器const app = express()app.use(bodyParser.urlencoded(

2020-07-12 21:58:12 1824

原创 get方法

接口 - 查询英雄外号 根据英雄名返回英雄外号接口地址 - /getNickName请求方式 - get请求参数 - heroName返回值 - 英雄外号//导包const express = require('express')//创建服务器const app = express()//写接口app.get('/getNickName',(req,res)=>{ //要接收前端传递过来的参数 console.log(req.query) //处理

2020-07-12 21:56:45 326

原创 数据类型

Set - 作用和数组类似,和数组不同的是:不能存放重复元素应用场景 - 数组去重测试代码//eg01:基本使用//let set1 = new Set([10,10,3,0,39,0,99]);//console.log(set1)//eg02:数组去重//let arr = [10,20,30,40,10,40,20];//let set = new Set(arr);//console.log(set)//let arrNew = [...set];//console.log

2020-07-04 21:05:56 129

原创 nodejs中的函数

箭头函数匿名函数的一个简洁简写规则funtiion 改成 = > 可以读成goesto如果只有一个形参,那就可以省略形参小括号如果不是一个形参,0个或者多个形参,那就不能省略这个形参的小括号如果函数体只有一句话,那就可以省略函数体的大括号如果函数体只有一句话,并且这一句话是return返回值,那return也要省略如果函数体不是一句话,那就不能省略这个大括号测试代码/普通的匿名函数//let fn = function(name){// console.log(

2020-07-04 21:03:12 429

原创 nodejs中的对象

对象成员简写现在声明一个对象对象里面有name,age,gender,score属性希望这些属性的值是上面对应变量的值测试代码//es5/*var obj = { name:name, age:age, gender:gender, score:score, sayHi:function(){ console.log('你好'); }}console.log(obj)obj.sayHi()*///es6var

2020-07-04 21:00:10 1574

原创 初识nodejs

1.js都是运行在浏览器端的* ECMAScript - js语法(变量,数据类型,表达式,代码结构(顺序、循环、分支))* Bom - 浏览器对象模型,用js去操作浏览器窗口* Dom - 文档对象模型,用js去操作页面上的dom树2.有了node.js,js也可以运行在服务端的* ECMAScript3.在node.js中,不能写dom语法和bom语法测试代码//var name = '111';//console.log(name)//在node.js中是不能执行bom和dom的

2020-07-04 20:56:07 56

原创 jquery的基本结构

jquery的本质是一个闭包jquery为什么要使用闭包来实现 - 为了避免多个框架的冲突jquery如何让外界访问内部定义的局部变量 - windowjquer为什么要给自己传递一个undefined参数 - 为了方便后期压缩代码,提高查找的效率jquer为什么要给自己接收一个undefined参数 - 为了方便后期压缩代码,IE9一下的浏览器undefined可以被修改,为了保证内部使用的undefined不被修改,所以需要接收一个正确的undefined代码测试(function(w.

2020-06-29 20:47:47 330

原创 3D旋转相册(css)

html部分<div class="box"> <ul class="minbox"> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> </ul> <ol class="maxbox"> <li>&l

2020-06-17 09:39:44 384 1

空空如也

空空如也

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

TA关注的人

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