利用Promise模拟任务队列,从而实现请求池效果

首先,我们需要理解什么是请求池。请求池 essentially 是一种机制,限制同时进行的请求数量,超过限制的请求会被放入一个队列中,等待之前的请求完成后再依次执行。这有助于控制资源的使用,避免因并发请求过多而导致的性能问题。 那么尝试写一下,现在假设我有一个函数,它返回一个promise,模拟网络请求,我想限制他同时进行的请求数量为3。那么我可以用一个数组来保存当前的promise,当数组长度达
利用Promise模拟任务队列,从而实现请求池效果

openLayers开源地图框架

OpenLayers是一个开源的JavaScript库,用于在网页上显示地图。它可以显示从各种资源,如Google Maps、Bing Maps、OpenStreetMap等获取的地图数据。OpenLayers支持广泛的地图数据格式和服务,包括矢量数据和瓦片地图。 官网:https://openlayers.org/ npm i ol <style> .map-x { width: 6
openLayers开源地图框架

【浅尝】uniapp+XR-frame实现小程序AR

最近发现微信小程序官方出了个组件框架,能够实现AR、VR等效果。闲来无事写个demo体验一下。 直接进入主题,为了方便这里选择了uniapp。 首先创建一个uniapp项目:就叫XR-demo 接下来我们需要新建一个新页面就叫AR 然后我们需要借助uniapp的官方文档,因为我们需要用到自定义组件: 小程序自定义组件支持 | uni-app官网 (dcloud.net.cn) 复制修改pages.
【浅尝】uniapp+XR-frame实现小程序AR

vue3实现鼠标滚轮控制横向滚动条滚动

在main.ts中注册全局自定义指令 app.directive('scrollX', { // 在元素被绑定到DOM中的时候调用 mounted(el) { el.addEventListener('wheel', function (event) { event.preventDefault() el.scrollLeft += event.deltaY }) }, // 在元素被解绑的时候调
vue3实现鼠标滚轮控制横向滚动条滚动

webpack、vite、vue-cli、create-vue的区别是什么?

脚手架 vue-cli create-vue 构建项目 vite 打包代码 webpack rollup 脚手架:创建项目,选择性安装需要的插件,指定统一的风格,生成demo。 构建项目:建立项目的运行环境,需要手动安装依赖插件 打包代码:代码写好之后,需要部署到生产环境,就需要打包处理 现在是不是有个初步概念了?接着往下看 vue-cli是vue官方早期退出的一款脚手架,使用webpack创建v
webpack、vite、vue-cli、create-vue的区别是什么?

什么是浏览器指纹?无痕模式就真的无痕了吗?

前言:在我们上网冲浪逛一些(学习)网站时,通常是不想让人知道的。这时候你会怎么做?你说打开无痕模式?那么我们打开无痕模式就真的无法被追踪到了吗?网站那边就真的不知道你是谁了吗?其实不然。 在这个市面上有一种叫浏览器指纹的技术,他可以在你没有任何登录的情况下,仍然知道你是谁。原理其实并不难,他是一种假设,假设我们的电脑硬件、系统版本、浏览器版本,整个运行环境都是唯一的,当然这肯定不是绝对的情况,所以
什么是浏览器指纹?无痕模式就真的无痕了吗?

通过微信登录pc的实现方案

场景:用户登录方式可选微信扫码登录   方案 微信的二维码登录有多种方式,如公众号扫码登录,弹窗二维码登录,而我们选择的是内嵌式二维码登录。官方文档:微信登录功能 / 网站应用微信登录开发指南 (qq.com)   实现步骤: 准备工作,需要在微信开放平台创建应用并获取到appid、appSecret   第一步:引入wxLogin.js脚本 通过外联方式 <s
通过微信登录pc的实现方案

富文本编辑器的xss问题

前言:今天,客户要求加入富文本编辑器并且在非编辑模式下显示富文本的内容,在vue中需要用到v-html,但是突然联想到这样是很容易出现xss问题的,于是我们就要考虑如何防范 首先我们先要了解一下什么是XSS。XSS即跨网站指令码(Cross-site scripting,通常简称为:XSS)是一种网站应用的安全漏洞攻击,是代码注入的一种。它允许恶意使用者将代码注入到网页上,其他使用者在浏览网页时便
富文本编辑器的xss问题

什么是token无感刷新

场景:假设我们现在有个Saas系统,里面包含了众多模块,所以为了安全起见我们会给他设置一个Token有效期,但是呢现在我们又开发了一个大屏数据可视化模块,这个模块需要长时间周期性的与后台通信,确保展示的数据是最新的,所以我们就不希望Token的过期时间那么快。为了解决这个问题我们就需要Token无感刷新,也就是双Token方案。 那么我们要如何实现呢?可以根据以下几点思路 1.在我们登录时,后端需
什么是token无感刷新