基于token的身份认证:JSON Web Token(附:Node.js项目示例)

前言 在大多数的应用里,身份验证是必须的。最近学习了基于token的身份验证,很多大型网站也在用,例如Facebook,twitter,Google,github。大家通常将token翻译为“令牌”。顾名思义,只有拿到这个令牌,你才能通关,才能去请求相应的数据或资源。 本文讲解了传统的和基于token的身份认证方式,并介绍了JWT相关知识,最后附上Node.js中使用jsonwebtoken、passport、passport-jwt模块获取和验证token的示例。 传统身份验证 HTTP 是
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

大数据应用都是什么(一)

现在的大数据的应用是十分广泛的,大数据的用途越多,我们的生活就能够过的更好。大数据是一种技术,也是一种应用,也是一种思维,那么大家知道不知道大数据应用的具体内容是什么呢?下面就有小编为大家解答一下这个问题。 首先我们给大家说一下作为数据的大数据。作为数据的大数据,是信息化、数字化、智能化技术的运用,具有四个特征,亦即海量的数据规模、快速的数据处理体系、多样化的数据类型、数据本身能创造价值等。现在体量巨大、种类繁多、价值密度较低的大数据,对数据的分析、处理、提纯、集合等能力提出了更高要求。信息时
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

Mac一些常用操作

MAC查找JDK的路径 在控制台中输入 /usr/libexec/java_home -V 复制代码 即可以看见 Matching Java Virtual Machines (2): 9.0.4, x86_64: "Java SE 9.0.4" /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home 1.8.0_91, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachi
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

iOS 打印结构体

NSStringFromCGPoint(<#CGPoint point#>); NSStringFromCGRect(<#CGRect rect#>); NSStringFromCGSize(<#CGSize size#>); NSStringFromRange(<#NSRange range#>); NSStringFromUIEdgeInsets(<#UIEdgeInsets insets#>); NSStringFromUIOffset(<#UIOffset offset#>);
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

input range 样式美化

<input type="range" class="rangeMain" name="volume" min="4" max="20" v-model="roomListSend.mixPeople" > less部分,并列写的。 .rangeMain { background-size: 98% 3px; margin: auto; width: 80%; backgr
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

scss、sass 全局变量

###使用场景 因为产品风格的统一性,需要抽象需要抽象一些css变量与方法,如下文件。 // common.scss $defaultSize: 12px !default; @function rem($px){ @return $px / $defaultSize * 1rem; } $primary-color: #3b94f3; $info-color: #70b4f9; $success-color: #1ed278; $warn-color: #ffa100; $danger
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

2020考研时间规划

第一阶段:基础学习期(3-5三个月) 这个阶段复习数学(同济课本+张宇)、英语(新东方+张剑),保证每天学习4-7个小时,周日除外。 英语 每天2小时,先复习单词与语法 4月份开始做真题阅读,之后完全篇翻译、整理词汇句子。 数学 每天2小时以上,20年估计考的比较难 数学先复习一遍课本(高数+线代),做课后题等章节题,详细复习一轮。若一轮复习完开始做一段时间真题。 坚持锻炼 其余时间经常关注考研学校,确定目标及考试内容。 第二阶段:强化学习期(6-8三个月) 7月份开始复习专业课(王道,具体待
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

Spring Integration的简介

Spring Integration在基于Spring的应用程序中实现轻量级消息传递,并支持通过声明适配器与外部系统集成。 Spring Integration的主要目标是提供一个简单的模型来构建企业集成解决方案,同时保持关注点的分离,这对于生成可维护,可测试的代码至关重要。Spring Framework鼓励开发人员使用接口进行编码,并使用依赖注入(DI)为普通旧Java对象(POJO)提供执行其任务所需的依赖项。 Spring Integration将这一概念更进一步,其中POJO使用消息
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

Mac下的MySQL配置

下载的方法都一样,但是配置过程能碰到各种问题,我查了无数的配置方法,发现全部拼起来才是适合我的方法。 1、百度一下如何下载并安装MySQL,完成后打开“系统设置” 点击最下方的MySQL,进入界面 我这里显示的是绿色的圆点,说明MySQL正在运行中,如果是红色的话,点击右边的“Start MySQL Sever”。 2、下载完成后,打开终端 以下为百度的内容:  alias mysql=/usr/local/mysql/bin/mysql  alias mysqladmin=/usr/loca
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

js和d3制作简单的直方图

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>直方图</title> </head> <body> <!--创建并设置矩形所在的区域大小为1200x800, 如果宽度不够大,在循环画矩形时会不够位置放置 --> <svg id="myreact" width="1200" height="800"></svg> <script> //var x=110,y=800; va
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

Javascript递归绘制二叉树

<html> <head> <title>标准二叉树</title> </head> <body> <!-- svg元素--> <svg id ="mySvg" width = 800 height = 600></svg> <script> //获取屏幕宽度 var w = window.innerWidth||document.docume
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

从 generator 函数 到 redux -saga (二)

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/85465287 Thunk 函数的自动流程管理 JavaScript 语言的 Thunk 函数 JavaScript 语言是传值调用,它的 Thunk 函数含义有所不同。在 JavaScript 语言中,Thunk 函数替换的不是表达式,而是多参数函数,将其替换成一个只接受回调函数作为参数的单参数函数。 // 正常版本的readFile(多参数版本) fs.re
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

从 generator 函数 到 redux -saga(三)

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/85503474 take实现原理 <html> <head> </head> <body> <div id="test">qwe</div> <script> let $btn = document.getElementById("test"); //channel是对事件源的抽象,作用是先注册一个take方法,当put触发时,执行
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

从 generator 函数 到 redux -saga (四)

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/85563013 fork 和 takeEvery takeEvery 的作用是每次put 动作执行的的时候 都去调用worker 以下代码可以直接在浏览器运行,执行步骤在代码中做了注释 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" co
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

从 generator 函数 到 redux -saga (五)

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/85613525 redux-saga 中的api 介绍 import { delay } from 'redux-saga'; import { all, call ,put, takeEvery ,fork,takeLatest ,apply,select,take ,cancel} from "redux-saga/effects"; delay 等待时间 接
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

从 generator 函数 到 redux -saga (六)

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/85615795 同时执行多个任务 import { call } from 'redux-saga/effects' // effects 将会同步执行 const [users, repos] = yield [ call(fetch, '/users'), call(fetch, '/repos') ] saga中的超时处理 import { r
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

懂点设计模式

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/86162363 learn《javascript 设计模式与开发实践》 一年断断续续的学习加实践 总结 单例模式 案例 惰性单例是单例模式的重点,是指在需要的时候才创建实例 创建对象和管理单例的指责分布在两个不同的方法中 这两个方法组合起来才具有单例模式的威力 场景:比方在一个页面中需要初始化化多个我们自己封装的第三方sdk 类 创建弹框的dom对象等等 策略模式
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

web安全防范

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/86391058 XSS 跨站脚本攻击 简单的说,就是攻击者想尽一切办法将可以执行的代码注入到网页中。 持久型也就是攻击的代码被服务端写入进数据库中,这种攻击危害性很大,因为如果网站访问量很大的话,就会导致大量正常访问页面的用户都受到攻击。 场景就是在做表单提交的时候 写入一个script标签执行一些恶意代码 这种情况如果前后端没有做好防御的话,这段评论就会被存储到
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

模仿webpack 基本编译原理 试写一个模块打包工具

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/86776381 整体思路: 初始化参数:从配置文件 和 Shell 语句中读取与合并参数,得出最终的参数; 开始编译:用上一步得到的参数初始化 Compiler 对象,加载所有配置的插件,执行对象的 run 方法开始执行编译; 确定入口:根据配置中的 entry 找出所有的入口文件; 编译模块:从入口文件出发,调用所有配置的 Loader 对模块进行翻译,再找出该
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0

npm package

版权声明:如需转载请著明出处 https://blog.csdn.net/qq_37653449/article/details/87637083 npm-package.json description : 包的描述 在其中加入说明。这是一个字符串。这可以帮助人们发现您的包裹 name : 包名 如果您计划发布包,则package.json中最重要的内容是名称和版本字段,因为它们是必需的。名称和版本一起形成一个假定完全唯一的标识符。对程序包的更改应随更改版本一起提供。如果您不打算发布包,则
分类: 其他 发布时间: 03-09 23:01 阅读次数: 0