- 博客(160)
- 收藏
- 关注
原创 CSRF 和 XSS 攻击分析与防范
XSS (Cross-Site Scripting) 是攻击者向网页注入恶意脚本,当其他用户访问时执行的攻击方式。三种类型存储型 XSS:恶意脚本存储在服务器上反射型 XSS:恶意脚本作为请求的一部分返回DOM 型 XSS:完全在客户端执行的攻击。
2025-05-15 23:43:40
429
原创 浏览器验证证书
等多重机制确保HTTPS证书的合法性。任何一环失败都会触发安全警告。开发者需确保证书配置正确,并定期更新以避免中断。在TCP握手成功后进行TSL握手,在服务器的Server Hello的过程中会返回给客户端数字证书。CA首先构建证书的原始数据(包括公钥、颁发者、有效期、域名等信息),格式遵循X.509标准。即使证书是合法的,也可能因私钥泄露等原因被CA吊销。浏览器验证证书的合法性是一个多步骤的过程,涉及。这一设计基于效率和安全的权衡。签发的,而不是伪造的。浏览器需要确认证书是由。在数字证书的签发过程中,
2025-05-15 16:05:31
1013
原创 linux系统的文件目录全称
通过理解这些目录的用途,可以更高效地管理系统文件、定位配置或日志问题。以下是Linux文件系统目录结构的全称及其常见用途的详细说明,遵循。
2025-05-14 00:47:44
240
原创 Cesium添加WMS,WMTS,地形图图,3D Tiles数据
WMTS(Web Map Tile Service)是一种瓦片地图服务,适合加载高分辨率地图。WMS(Web Map Service)是一种动态地图服务,适用于加载栅格地图图层。(如 Cesium World Terrain)。3D Tiles 是 Cesium 的。Cesium 支持加载。
2025-04-29 17:39:00
772
原创 天地图图层标识
以下是天地图(Tianditu)及其他常见地图服务中 图层代码的英文全称 和 坐标系后缀 的详细说明:天地图URL中的后缀表示坐标系类型:示例:天地图注记层规则:坐标系选择:组合使用示例:如需其他地图服务(如ArcGIS、Bing Maps)的代码规范,可进一步补充说明。
2025-04-29 17:20:48
408
原创 EPSG的作用
欧洲石油调查组织)是国际上一个负责制定和维护大地测量、地图投影、坐标系统等地理空间数据标准的组织。虽然它最初由石油行业发起,但如今其标准已被全球广泛采用,成为地理信息系统(GIS)、遥感、测绘等领域的基础规范。总结来说,EPSG是地理空间领域的“通用语言”,确保不同系统和数据能无缝对接。理解EPSG代码是处理地图、遥感、定位等数据的基础技能。通过标准化的参数,帮助不同坐标系统之间准确转换(如从地方坐标系转到全球坐标系)。EPSG为不同的坐标系统分配唯一的编号(如。代表WGS84经纬度坐标,
2025-04-29 16:38:22
311
原创 微信H5网页根据图片base64生成图片长按下载
库生成图片base64,然后将图片覆盖到目标dom上实现长按保存图片。微信H5不支持js操作本地下载图片,只能长按图片保存,所以使用。
2025-04-15 16:17:51
255
原创 Function.prototype.__proto__==Object.prototype
关于函数的一条有意思的原型链:fill:#333;fill:none;ry:5px;ry:5px;ry:0;ry:5px;rx:0;ry:0;rx:0;ry:0;__proto____proto____proto____proto____proto__fn()nullFunctionObject。
2025-02-16 01:28:05
1078
原创 nestjs-属性注入和构造函数注入的区别
在构造函数中打印 this.reflector 时,Reflector 还未被注入,所以是 undefined。如果必须使用属性注入,可以在生命周期钩子(如 OnModuleInit)或后续方法中访问注入的依赖。在后续的请求方法(如 get 方法)中,Reflector 已经被注入,所以可以正常访问。属性注入的依赖在构造函数中不可用,因为 NestJS 会在类实例化之后才为属性赋值。NestJS 在实例化类时,会首先解析构造函数中的依赖,并注入相应的实例。因此,构造函数中的依赖在类实例化时就已经准备好了。
2025-02-14 00:58:35
285
原创 replaceState和vue的router.replace删除query参数的区别
在vue项目中,如果要替换掉query参数,可以使用。然后通过该方法删除某个query参数。获取的参数就会有变化,如果是通过。
2025-01-15 11:13:39
365
原创 yarn修改缓存位置
yarn config set global-folder “自定义node_modules目录路径”yarn config set cache-folder “自定义cache目录路径”yarn config set prefix “自定义bin目录路径”查看global目录命令:yarn global dir。查看cache目录命令:yarn cache dir。查看bin目录命令:yarn global bin。
2024-12-16 16:47:51
866
原创 前端代码git工程化和格式化规范
husky,允许在git钩子中执行不同的脚步,如各种工具, 验证commit信息,以及采取的规范,以及帮助生产commit message的工具,生成文件,以及根据什么规范来生成,生成,修改的version,commit其新增的文件,最后的git push和npm publish需要自己手动敲。eslint代码质量检验核心包,@eslint/js包含了内置的一些规则。prettier代码风格格式化包,关闭eslint中和prettier冲突的代码风格化规则,
2024-11-29 13:01:35
712
原创 【Cesium】--viewer,entity,dataSource
/ 根据实体创建dataSourcei++){// 根据name获取dataSource// 切换数据源显隐}else if(!}else{// 删除dataSource}else if(!
2024-11-25 17:26:17
747
原创 swagger-ui-react渲染openapi.json显示api文档,配置服务器和认证信息
【代码】swagger-ui-react渲染openapi.json显示api文档,配置服务器和认证信息。
2024-11-20 16:30:58
210
原创 vue-router使用history模式,在浏览器新打开标签页跳转路由提示找不到路由
里配置回退路由,配置的基础路由要和。一样,这样在代码里通过。
2024-11-18 16:00:28
264
原创 echart堆叠柱状图tooltip不显示value为0的情况,自定义formatter
echart堆叠柱状图tooltip不显示value为0的情况,自定义formatter。
2024-11-08 16:39:37
364
原创 echart 使用dataset.source更新数据时,为什么那个legend没有被更新到呢?
在 ECharts 中使用 dataset.source 更新数据时,图例(legend)并不会自动更新。这是因为图例的内容是根据 series 中的 name 属性或 legend.data 属性来生成的,而不是直接从数据集中推导的。在更新 dataset.source 后,手动设置 legend.data 的内容,以确保图例与数据一致。确保 series 中的每个系列都设置了对应的 name 属性,这样在更新数据时,图例会自动对应这些系列。
2024-10-29 14:53:12
481
原创 两个平行重叠的div,鼠标事件穿透
上层的外层容器设置pointer-events:none;,里面需要点击的div设置pointer-events:all;
2024-10-28 17:20:20
210
原创 js中的字符串的length的知识点。
因此string.length这里的长度指的是16位码元的长度,比如长度是2,说明这个值存储占用了2个码元,2*16=32位,4个字节。utf-24不实用,计算机不好处理,性能差,而且节省的空间也不多,所以不编码的方式就用utf-32。字符不用编码,直接存储,大于这个范围的用一个代理对(2个16位,即2个码元)表示,编码后的值为。(基本多语言平面字符集),剩余的字符集为补充字符集包括了(许多常见的emoji字符位于此)。:会将unicode码以6位为界切割,编码后的值在1-4字节。
2024-08-22 18:50:44
438
原创 eval和new Function构造函数时的区别
对于定义函数来说,如果想用eval动态构造函数,那么有两种方式:1.使用箭头函数表达式构造函数,2.使用。,并且返回最后一个表达式(注意不是声明语句)的值。这里需要注意的是返回的值是表达式的值,比如。共同点:二者构造的函数的作用域都是全局的,可以通过。将函数function声明语句包裹起来,
2024-07-09 15:15:25
376
原创 webpack打包gz文件,nginx开启gzip压缩
webpack4配合"compression-webpack-plugin": "^6.1.2"打包压缩gz。
2024-06-18 22:46:10
643
原创 【vite-plugin-singlefile】只打包生成一个html文件,支持file协议本地打开
【代码】【vite-plugin-singlefile】只打包生成一个html文件,支持file协议本地打开。
2024-06-03 14:25:21
1322
原创 webpack5以下的项目,前端引入node的path模块需要额外配置
其实就是在打包前端项目的时候,将path模块替换成 path-browserify 模块,所以还需要安装 path-browserfify 模块。webpack5以下的项目,前端。时需要额外配置,这里以。
2024-05-13 12:42:08
329
原创 generator生成器和promise配合实现看似同步的异步流程控制(async和await)
本文来自于 <你不知道的Javascript> 学习笔记。生成器函数返回的是迭代器,在内部每个。相当于就是把这个流程写进了语法层面.函数相当于 生成器,
2024-05-13 00:19:28
350
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人