首页
工具箱
Search
1
python生成剪映草稿解析
2,198 阅读
2
Vue vben admin 2.0的封装部分坑点
1,792 阅读
3
时间的风景/TimeScapes 母带Rip (1080p/4K) 下载
1,462 阅读
4
百度地图坐标系对腾讯地图坐标系转换
1,442 阅读
5
VUE中使用mathjs的方法
1,424 阅读
技术宅的演示性文稿
技术宅的吐槽文档
一个的舞台
唱唱反调
老文章归档
光年计划
登录
Search
标签搜索
老文章
CS
长春
大学
程序员
vue
酷游CS俱乐部
dedecms
织梦
php
vant
小程序
军训
缘
ie6
google
大连
2012
js
ecshop
茶树虾
累计撰写
306
篇文章
累计收到
129
条评论
首页
栏目
技术宅的演示性文稿
技术宅的吐槽文档
一个的舞台
唱唱反调
老文章归档
光年计划
页面
工具箱
搜索到
302
篇与
teaxia
的结果
2019-04-26
在vue-cli构建的项目中使用vue-touch报priority错误
造成的原因可能是你的vue-touch安装的版本不对,vue2.0及其以上的版本的项目需要安装的是:npm install vue-touch@next后面的next必须加上,否则安装的vue-touch的版本则是版本1,加上next安装的版本才是2,才可以用于vue2.0构建的项目当中!作者:kitty_777链接:https://www.jianshu.com/p/8457348af319来源:简书简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
2019年04月26日
278 阅读
0 评论
0 点赞
2019-04-26
thinkphp3.2使用JWT进行用户token签名
总所周知,http是一种无状态协议,而当我们在传统的MVC模式下面,通常情况下是靠session来进行登陆验证。而现在的WEB已经发展到前后端分离的状态了,那么传统模式的session已经不能满足我们的需求。使用AXIOS与thinkphp进行跨域(非跨域)通信的时候,在服务端是无法使用session的,那么我们怎么来判断用户是否登陆呢?这个时候我们则使用到了现在流行的JWT方法。JWT是JSON Web Token的缩写JWT的作用是加密和解密。它可以把一堆数据加密,并生成一串密文,也可以把密文解密,还原原始数据。这样一来就可以用JWT加密个人登录信息,以便个人登录时,并提供密文,以证明自己是合法用户。 例如:把登录后的uid加密形成密文,然后发回个客户端,客户端以后每次都携带密文,访问带有权限验证的页面,服务服务端通过解密,得到uid,说明是已登录过的用户,并开放访问。这样,就必须要求客户端在访问每个需要验证的页面,都必须携带密文,同时在服务端也就不需要使用session验证了。顺便也避免了服务端session数据大的时候,引起的问题。因为加密的密文不是很长,服务端解密是很快的,所以不会给服务端造成压力。这样带来的好处是,多种设备使用一种密钥,都可以通用,可以避开手机端使用session等问题。同时,由于JWT是使用base64进行对称加密,也就是说是可以进行解密的,所以千万不要存储用户的密码等敏感信息!同时,由于JWT是使用base64进行对称加密,也就是说是可以进行解密的,所以千万不要存储用户的密码等敏感信息!同时,由于JWT是使用base64进行对称加密,也就是说是可以进行解密的,所以千万不要存储用户的密码等敏感信息!好了,现在我们来介绍一下在thinkphp如何使用JWT首先通过git获取https://github.com/firebase/php-jwt把获取到的JWT放至thinkphp的目录下,目录结构如下:Thinkphp/Library/Vender/Firebase/JWT此时JWT文件里面应有4个文件分别为:SignatureInvalidException.php JWT.php ExpiredException.php BeforeValidException.php除了JWT.php是我们要引入的主文件以外,其他文件不用直接引入。我们在需要使用JWT的文件里面添加上命名空间然后在要使用的操作类里面通过thinkphp的Vendor方法引入public function Login(){ Vendor('Firebase.JWT.JWT'); // 使用JWT进行密钥签名 define('KEY', '28ksdfgdioaiowjqwreosod23ldmbsm2Xa'); // 自定义私有密钥 // 这里的$data是通过查询数据库里面是否有相应的用户名,并且密码正确返回的信息,我这里忽略了验证数据库信息的过程 if($data){ $nowtime = time(); $token = [ 'iss' => 'teaxia', //签发者 'aud' => username, //jwt所面向的用户 'iat' => $nowtime, //签发时间 'nbf' => $nowtime, //生效时间(马上生效) 'exp' => $nowtime + 3600, // 过期时间1小时 'data' => [ 'userid' => $data['id'], // 数据库的用户ID(请自行获取) 'username' => $data['name'] // 数据库的用户名(请自行获取) ] ]; $jwt = JWT::encode($token, KEY); // 通过JWT获取token $this->ajaxReturn($jwt); // 返回用户token } }以上,通过JWT生成用户TOKEN的过程就完成了,那么我们在验证TOKEN的时候,使用$key = "28ksdfgdioaiowjqwreosod23ldmbsm2Xa"; // 私钥 $decoded = JWT::decode($jwtstr, $key, array('HS256')); // $jwtstr是每次请求时传过来的token $arr = json_decode(json_encode($decoded), true); // 解密数据这里面的$arr就是解密的用户信息,拿到这个用户信息就可以判断用户权限这些东西了
2019年04月26日
785 阅读
0 评论
0 点赞
2019-04-12
有点糟糕
4月,不知道是不是有水逆,养了10年的老猫莫名其妙的消失。我甚至不能确定它是跑出去了还是在家里躲着,如果在家里躲着已经几天了,它都没有出现。但是如果是跑出去了,家里也没有人见它是如何穿越防盗门跑出去的。希望它一切安好吧。就在刚才,突然发现博客打不开了,点开一看发现博客的数据库链接不上了,找了半天的原因,发现原来是我手贱,把博客数据库给误删掉了。还好有以前的老数据库没丢,不然多年的积累也会消失。希望接下来的日子如下:
2019年04月12日
322 阅读
0 评论
0 点赞
2019-02-13
关于盗版的|“三三两两”
这个春节过的是相当的热闹,至少在电影行业是这样的。不知道从何时开始,过年看电影好像成为了过年的一部分,而今年的春节档电影,也让我格外的期待。《流浪地球》、《飞驰人生》、《疯狂外星人》不得不说这三部电影是我最期待的三部电影。由于一些原因,我在电影院观看了《流浪地球》、《疯狂外星人》。然而《飞驰人生》我是在家里看的网络流传的盗版。说起这个盗版,最初我是在微信群里发现有春节电影盗版资源的流出。起初我以为是电影院的枪版,不过等到我点开视频才发现,这些资源算是高清版了。一般高清版的资源不可能在上映第三天就流出来,而是要等到院线下线了以后各大视频网站上推出了才会有高清版的盗版资源流出。确实,这次的盗版资源流出对票房肯定产生了很大的冲击,这让我想到了我小时候的游戏产业一样。我从小学三年级开始接触计算机,那时候进学校机房是需要穿鞋套的。而外面也有了一些网吧,但是都是写着网上冲浪。那时候的我完全不能理解网上冲浪这件事情,只是依稀记得那个时候家里上网是需要拨号的,而且固定电话是不能用的。不管是在网吧里还是学校机房,小学生的我最爱玩的就是电脑游戏了。也从来没有什么版权的观念,只是知道游戏是从买来的游戏光碟里面安装的。甚至觉得买的光碟就是正版的,而直接在网上不花钱下载的才是所谓的“盗版”。那时候的游戏五花八门,有各类的休闲游戏,也有当时的"3A"大作。那时候国内还是有很多的游戏厂商在不停的开发着当时优秀的游戏。但是好像一夜之间,国内的游戏公司就只剩下了开发《仙剑奇侠传》的那家公司“大宇”。那时候的我以为,是因为国产游戏本身就烂,而我依旧在网上寻找着其他国外公司发行的盗版游戏。在那个散装盗版光盘泛滥的年代,满怀激情与创意的国产游戏从业者耗尽心思创作的游戏,不但得不到一丁点回报,最后却赔了个血本无归,然而造就这一切的却是我们这些一边玩着盗版游戏,一边又在说这个游戏做的真垃圾的我们。劣币驱逐良币,导致现在没有公司愿意好好的做一款单机游戏,而游戏市场充斥着太多太多粗制滥造的氪金手游。这或许就是我们应该承担的后果吧。版权这个概念,是从我做了插件开发者才有的。看着自己辛辛苦苦开发的插件,却被盗版网站随意卖掉,并且自己没有得到一分回报时,我才明白这些开发人员的心是有多痛。很多人觉得看电影跟玩游戏一样,不过就是休闲的东西,买个便宜,图个高兴就好。别说正版,很多人的脑子里都还没有版权的这个概念,一直到后来有些人的正版意识开始觉醒时,才发现一切已经晚了。我不是所谓的“正版侠”。我的电脑依旧用着KMS激活工具,Adobe套件依旧是需要破解工具来破解。但是我尽可能的在我能力范围内支持正版。有一天,我的office换成了金山的WPS,我的开发工具变成了VS Code,我的音乐软件自己给它充了会员,我的视频网站也一年一年的续费着会员。以前我没得选,但是现在,我想做个好人!
2019年02月13日
294 阅读
0 评论
3 点赞
2019-01-16
JS 将有父子关系的平行数组转换成树形数据
假设数据结构为:let data = [ {id: 1, text: 't11', parentId: 0}, {id: 2, text: 't11', parentId: 0}, {id: 3, text: 't11', parentId: 1}, {id: 4, text: 't11', parentId: 1}, {id: 5, text: 't11', parentId: 3}, {id: 6, text: 't11', parentId: 2}, ]; 需要转换成:// let tree =[{ // id:1,text:'t11',parentId:0, // child:[...] // }] 计算代码:data.forEach(ele => { let parentId = ele.parentId; if (parentId === 0) { //是根元素的hua ,不做任何操作,如果是正常的for-i循环,可以直接continue. } else { //如果ele是子元素的话 ,把ele扔到他的父亲的child数组中. data.forEach(d => { if (d.id === parentId) { let childArray = d.child; if (!childArray) { childArray = [] } childArray.push(ele); d.child = childArray; } }) } }); //去除重复元素 data = data.filter(ele => ele.parentId === 0); console.log('最终等到的tree结构数据: ', data);
2019年01月16日
585 阅读
0 评论
0 点赞
1
...
11
12
13
...
61