web
文章平均质量分 84
摸鱼Script
目前正在学习Web全栈开发,时不时会分享个人经验。
主页:https://passkou.com
GitHub:https://github.com/Passkou
展开
-
动态令牌离线生成机制探究(2FA & TOTP)
前言也许你用过银行的密码器,以工商银行的网银电子密码器为例,它长这样:可能你以为它是会联网的,毕竟你只要输入转账页面给的一串数字,然后它就会生成一串六位数的一次性口令,你把它输入到转账页面的验证码中,你的钱就转出去了。但是,实际上它是不联网的,你将它放入断网的地方它照样能生成一次性口令,这是如何运作的?2FA2FA,全称 Two Factor Authentication,中文名叫 双重因素认证,便是里面的核心技术。字面意来理解,双重因素认证,即认证需要用到两重因素。比如,你在银行 ATM 取钱原创 2021-06-14 16:06:46 · 2899 阅读 · 2 评论 -
HTTP状态码滑稽表情包
200 OK请求成功时,最常见的就是这个状态码。202 Accepted服务器已接受处理,但未处理完成。与之相似的是 201 Created,表示服务器已接受并创建新的资源。204 No Content常见于 HEAD 请求,服务器未返回响应体,只有响应头。206 Partial Content常见于范围请求的响应,表示响应体只是部分资源,资源范围由响应头 Range 规定400 Bad Request客户端请求有误,例如不遵循 HTTP 规范,或是请求参数有错误。403 Fo原创 2021-05-31 12:48:34 · 1593 阅读 · 0 评论 -
JS 中 Array.prototype.sort() 的坑
情景今天刷 LeetCode 的时候,有一道题是需要先给数据排序再进行运算,因为重点不是排序所以我直接使用了 JS 中的 Array.prototype.sort() 方法,结果答案一直不正确,我以为是主要算法出问题了,然后看了下和正确答案是一样的,就找不到是什么原因。然后我把代码搬到 VS Code 里头调试,发现数组并没有按照数字大小排序,代码如下:const arr = [1, 100, 21, 23, 3]arr.sort()console.log(arr) // [ 1, 100, 21原创 2021-05-28 12:33:57 · 236 阅读 · 0 评论 -
网站的几种识别用户身份的方法(Cookie 机制)
在网站应用中,由于 HTTP 协议是无状态的,识别不同用户的主要方法是通过 Cookie,即用户在认证后发送它让浏览器存储,之后每一次请求中再附带这个请求头信息发回服务器,这样服务器便知道是哪位用户发出的请求。具体实现方法有哪些呢?下面我将为大家介绍几种常见的通过 Cookie 来识别不同用户的方法。第一类:信息存用户侧第一类的方法是将用户的部分信息存在浏览器的 Cookie 中(如用户 ID)。那么首要问题就是要防止被人为修改,因此实现方法有两种。方法一:Base64 数据 + HMAC首先,我原创 2021-05-18 17:28:53 · 5447 阅读 · 0 评论 -
纯前端白嫖b站服务器资源
叔叔我啊,最讨厌白嫖我服务器资源的人了前言最近刚完成自己的博客系统,然后想办法白嫖了b站服务器资源来达到优化前端显示,又不需要占用自己服务器的资源。一、获取视频信息b站部分API支持JSONP技术,简单来说就是网页中加载外部脚本是不受跨源限制的,利用服务端动态生成脚本来达到跨源获取数据的目的。以b站获取视频信息为例子:JSONP GET https://api.bilibili.com/x/web-interface/view?jsonp=jsonp&bvid=BV1Bf4y1Q7QP&a原创 2021-01-31 23:32:26 · 1038 阅读 · 0 评论