自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 Eolink 征文活动 --- 前端如何通过 Mock 对接

可能是全网最全 Mock 教程

2022-11-12 20:32:09 471 2

原创 Eoapi+Vercel+Serverless,部署一个 API 调试工具

这是一个超详细的实例,跟着做完你会: 1. 光速入门 Vercel、Serverless Functions2. 得到一个和图片一模一样的专属的 API工具

2022-04-30 09:09:45 638 1

原创 Cookie 从入门到进阶:一文彻底弄懂其原理以及应用

一、Cookie 是什么?Cookie,它的名字源自一种叫 Fortune cookie 的饼干,这种饼干里面有一张写着精辟句子的小纸条。在浏览器中,Cookie 是服务器让浏览器帮忙携带信息的手段,就像饼干里的纸条,浏览器会储存它,并且在后续的 HTTP 请求中再次发送给服务器。二、Cookie 应用主要用于以下三个方面:会话状态管理(如用户登录状态、购物车、游戏分数或其它需要记录的信息)个性化设置(如用户自定义设置、主题等)浏览器行为跟踪(如跟踪分析用户行为等)因为 HTTP

2022-03-16 10:20:44 1582

原创 为什么设置了 autocomplete,浏览器仍然会自动填充密码?

HTML autocomplete 属性可用于以文本或数字值作为输入的 <input> 元素 , <textarea> 元素, <select> 元素, 和<form> 元素。autocomplete 作用于文本提示而不是账号密码提示,如图:账号密码提示:除了让用户关闭浏览器设置,我们应该如何从代码层面隐藏密码提示框呢?首先看看浏览器填充表单密码的机制(各浏览器机制有些许不同),以 Chrome 为例,机制如下:此域名下保存过用户信息。找.

2021-08-19 13:11:17 1033 1

原创 无状态协议中的状态指的是什么?

在理解 Cookie、Session 等状态缓存方案的时候,很多人说 HTTP 是无状态协议,所以无法记住登陆状态。那么无状态指的是什么呢?登陆状态是你开发应用的状态,而不是协议本身的状态,再说了协议本身不只是作用于前后端应用。所以我更加偏向于理解协议状态指的是协议本身的是否有不同状态,而不是协议是否支持保存应用的状态。需要注意有无状态针对的是协议本身(应用层),而不是底层实现,避免混淆了 HTTP 传输层中也有握手等中间过程状态。所以我们只从一次请求的过程去判断协议是否有状态,会发现无论你什么时候请求

2021-04-17 19:16:00 146

原创 JavaScript 实现 HTMLDecode

背景最近公司有个格式整理的需求,需要将转义序列 \&#x4F60;\&#x597D; 转换为中文。&# 是什么?HTML、XML 等 SGML 类语言的转义序列(escape sequence)。它们不是「编码」。&#x4e2d;&#x56fd;<!--中国-->&#20013;&#22269;<!--中国-->这种转义序列叫 numeric character reference(NCR)。可以理解为 &amp

2021-03-24 09:00:32 1712

原创 如何解决 node-sass 安装失败?

配置环境也是门学问,反正我每次配环境能出一堆问题,望所有同学都有耐心,最后一定会解决的~ps:如果解决不了,可使用饮鸩止渴大法–叫同组小伙伴直接发node-module给你哈哈哈~报错> [email protected] install E:\node_modules\gulp-sass\node_modules\node-sass> node scripts/install.jsDownloading binary from https://github.com/sass/no

2020-11-27 12:18:48 309 2

原创 吃货如何理解01背包问题

背包问题先从栗子出发,你是一个有理想的吃货,你的肚子只能容纳500g 的食物,为了保证你得到的价值(营养)最大化,有以下几份食物可以选择食物质量/weight (100g)价值/value(10g)米饭24黄瓜15西红柿18牛肉310动动吃货的小脑筋,就知道,营养价值最大化的选择是牛肉+黄瓜+西红柿 共 23(10g)营养!可是该怎么使用程序计算出答案呢?思路肚子的资源有限,对每一种食物有两种选择:吃或者不吃。判断的依据有两

2020-11-27 12:11:46 352 2

翻译 [译]不要再犯这五个 Javascript 错误啦

原文地址:https://medium.com/the-dev-caf%C3%A9/stop-making-these-5-javascript-style-mistakes-7b352e1b47e3原文作者:Giuseppe Picciano译者:scarqin下文将列出五个让你的代码更加可读和易于维护小窍门。在编辑旧项目的时候,有没有遇到过那种一加新逻辑就“粉碎”的迷惑代码?我们当然都遇到过。为了让世界上不可读的 Javascript 代码更少,我得给你们看看以下的五个例子 – ..

2020-11-27 12:09:12 374

原创 浏览器 Chrome 86 启用缓存分区(Cache partitioning)

所有浏览器都有自己的缓存机制,它们通过将资源缓存到本地,借此加速用户访问客户端的速度,减少服务器压力。近期发布的 chrome 86 启用了新的浏览器缓存策略,我们一起来看看它是什么,为什么出现,以及带来的影响吧!在介绍它之前,我们先来看看旧的缓存策略。旧缓存策略-单键储存chrome 86 版本以前,引用/储存缓存的键名是资源的 URL。如图:也就是说,如果有其他任何网站引用到了同个 URL的资源,浏览器会先去缓存里面查询有无资源,有则加载本地资源,无则远程请求。新缓存策略-缓存分区(Cac

2020-11-20 10:52:42 527

原创 为什么我的 gitignore 不生效

1.问题背景项目有一些开发时用的配置文件,需要用到所以不能删,但是却不想提交改动。理所当然地想到将它加入 .gitignore 规则中,但是我的改动还是被 git 被捕捉到了,为啥呢?gitignore - Specifies intentionally untracked files to ignore官方文档给出了标准答案,原来 .gitignore 只对未跟踪的文件起作用!已跟踪的文件是指那些被纳入了版本控制的文件,在上一次提交中有它们的记录。那么未跟踪文件就是指那些从没提交过的文.

2020-10-30 11:11:30 530

原创 JavaScript 日期操作我不知道的事情

平时对 Date 很多内容都一知半解,每次一用到 Date 就需要查资料,着实恼火。故此文记录关于 JS 日期操作那些我不知道的事。基础问题Date.prototype.getTime() 返回的数字是什么?官方对getTime 函数对定义是The getTime() method returns the number of milliseconds* since the Unix EpochgetTime() 函数返回从 Unix Epoch 开始到当前 Date 所指时间经过的毫秒数。

2020-09-18 08:56:06 309

原创 MutationObserver 方法

MutationObserver 是什么MutationObserver API 让我们能监听 DOM 树变化,该 API 设计用来替换掉在 DOM 3 事件规范中引入的 Mutation events。Mutation events 是同步触发的,每次变动都会触发一次调用。MutationObserver API 是异步触发的, DOM 的变动并不会马上触发,而是要等到当前所有 DOM 操作都结束才触发。所以 MutationObserver 相比 Mutation events 性能要更高。代码

2020-08-11 18:30:12 1346

原创 如何填写 Eolinker Mock API 响应内容

上篇文档-如何使用 Mock 提到我们公司使用 Eolinker 管理 Mock,本文详细说明 Eolinker Mock 写法以及每种方式的适用场景。首先让我们来看看如下示例在 Eolinker 三种格式里面分别需要怎么写。Mock.mock({ "string|1-10": "★",//随机生成 1-10 个字符串"★" "string2|3": "★",//固定生成 3 个字符串"★" "number|+1": 202,//每次请求自增 1,初始值为 202 "number2|1-10

2020-08-05 13:26:16 231

原创 JS实现HTTP请求头-Basic Authorization

HTTP协议中的 Authorization 请求消息头含有服务器用于验证用户代理身份的凭证,通常会在服务器返回401 Unauthorized 状态码以及WWW-Authenticate 消息头之后在后续请求中发送此消息头。 Authorization:Basic c2NhcjoxMjM0NTY= Authorization: <type> <credentials> //(c2NhcjoxMjM0NTY=) 是(scar:1

2020-07-15 08:55:38 6653

原创 CSS Footer固定到底部

你想要怎么放置你的 Footer?风雨不动稳如狗固定在可视窗口最底部,页面滚动也仍然固定在最底部。能屈能伸页面内容高度不确定,希望 Footer 放置在页面内容的最下方。我是一个demo页面内容少,无法撑开,在可视窗口最底部页面内容多,在页面最底部怎么做你想要风雨不动稳如狗,使用下列代码:对于第二种能屈能伸的情况,你可以1. 设置min-height<div class="wrapper"></div><footer class="footer

2020-07-15 08:54:41 433

原创 如何使用 Mock

Mock 能做什么?1.API 没开发好,使用 Mock 快速对接在产品经理发布需求后,前后端同学先根据功能需求出一份 API 文档,然后再按照 API 文档并行开发。不依赖后端提供数据的情况下,如何让前端独立于后端进行开发呢?使用 Mock,你可以在开发环境代码内置 Mock,拦截请求,模拟真实 API 返回。如果公司使用了接口管理平台,文档发布的时候可以还通过平台生成 Mock API 直接对接。2.为测试提供数据使用Mock 假数据替代我们想控制但控制困难的部分例如某些 API 依赖

2020-06-30 12:36:01 4476 1

原创 使用JavaScript实现JWT鉴权

随着互联网的崛起,对Web服务应用的安全性要求越来越高。在前后端分离的开发模式中,服务端使用特定的加密方式生成token,客户端储存token作为授权传递给服务端,验证身份等信息是保障安全性的一种方式。其中JWT(JSON Web Token)这种用于通信双方之间以 JSON 对象的形式传递信息的轻量鉴权方式受到越来越多的开发者喜爱。什么是鉴权如果没有鉴权信息,他人能够轻而易举的调用API对我...

2020-04-12 14:24:00 7972

原创 模块化 require和import的区别

当前端应用越来越复杂时,我们想要将代码分割成不同的模块,便于复用、按需加载等。require 和 import 分别是不同模块化规范下引入模块的语句,下文将介绍这两种方式的不同之处。1. 出现的时间、地点不同年份出处require/exports2009CommonJSimport/export2015ECMAScript2015(ES6)2. re...

2020-04-12 14:22:56 451

原创 锚点定位被顶部固定导航栏遮住的解决方案

很多网站都有一个固定在上方的导航栏,方便用户搜索和跳转到其他页面。同时为了方便用户浏览长文档,都会加上目录,点击段落标题跳转到段落所在的位置,如图所示:如果使用锚点实现目录的跳转,会遇到 fixed 导航栏遮住了标题的问题。1. 锚点定位机制如果没有滚动条,锚点失效。如果有滚动条,滚动条滚动到地址 hash (地址 # 号后面的内容)对应的锚点元素padding-box上边缘位置...

2020-04-12 14:20:34 4421

【4.1】Eolinker 开源版本浏览器插件

4.1 版本插件,支持 Eolinker 开源版本的插件。 eoLinker是国内第一个对本地服务器进行复杂接口测试的在线接口管理平台,不需要任何复杂的配置,您只需在浏览器中安装一个插件,我们将自动为你准备好一切 eoLinker是目前中国最大的在线API管理平台,也是目前业内第一个推出在线API自动化测试的产品。该插件为eoLinker提供跨域测试、文件测试、自动化测试等功能。 相比于Postman等插件,eoLinker的产品功能更加侧重于API文档管理以及团队协作,同时拥有不亚于postman的API测试功能,操作上更加适合亚洲用户习惯。

2020-06-30

空空如也

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

TA关注的人

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