自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

_midnight的博客

https://www.zyweb.vip

  • 博客(50)
  • 收藏
  • 关注

原创 AST 在前端开发中的应用与实践:从代码分析到自动化转换

抽象语法树(AST)在前端开发中广泛应用,包括代码编译、代码优化、代码分析、代码格式化、JSX 转换和构建工具。通过解析和操作 AST,开发者能够对代码进行深度分析和自动化转换,提高代码质量和开发效率。此图展示了 AST 在这些方面的应用,用图标清晰地表示各个应用场景。

2024-06-05 17:12:38 784

原创 History 模式和 Hash 模式路由的区别、优缺点及在开发生产环境中的注意事项

在现代单页应用(SPA)开发中,前端路由常用两种模式:Hash 模式和 History 模式。Hash 模式无需服务器配置,兼容性强,但 URL 不美观。History 模式 URL 美观且有利于 SEO,但需服务器配置支持。本文详细对比两者的区别、优缺点及注意事项。

2024-06-04 22:05:03 952

原创 深入解析 Web 开发中的强缓存与协商缓存机制

通过使用强缓存和协商缓存,可以显著提升 Web 应用的性能和用户体验。强缓存可以减少不必要的请求,节省带宽,而协商缓存则确保了资源的最新性。合理地配置缓存策略,可以在性能和数据一致性之间取得平衡。虽然标签中的缓存控制有其局限性,但对于简单的静态页面仍然有效。为了获得最佳效果,建议结合服务器端的缓存策略一起使用。

2024-06-03 16:22:18 1138

原创 在 JavaScript 中实现数据加密与解密:Web Cryptography API 与 CryptoJS详解

本文详解了如何在 JavaScript 中使用 Web Cryptography API 和 CryptoJS 进行数据加密与解密。介绍了生成密钥对、加密数据和解密数据的具体步骤,通过直观的示例代码展示了实现过程。无论是在浏览器环境还是 Node.js 环境下,这些方法都能帮助开发者确保数据传输的安全性和完整性。

2024-06-02 15:09:06 930 2

原创 掌握 NestJS 10.x:NestJS 结合 PostgreSQL 使用详解

本文详细介绍了如何在 NestJS 项目中集成和使用 PostgreSQL 数据库。涵盖了安装依赖、配置 TypeORM、创建实体、定义服务和控制器以及运行应用的步骤。通过清晰的步骤和示例,帮助开发者快速上手并构建高效的全栈应用。

2024-05-31 09:33:44 559 2

原创 掌握 NestJS 10.x:从零开始构建高效可扩展的服务器端应用详解

本文详细介绍了如何使用 NestJS 10.x 构建高效、可扩展的服务器端应用。涵盖了模块、控制器、服务、中间件、管道和拦截器的创建和作用,帮助开发者快速上手 NestJS。通过清晰的步骤和示例,让你轻松理解 NestJS 应用的结构和流程。如果有任何问题或需要进一步的帮助,请在评论区留言或者联系我。

2024-05-31 09:25:20 731

原创 调研市面上高评价的数据库:特点、优缺点与适用场景

本文详细比较了市面上评价较高的几种数据库,包括MySQL、PostgreSQL、Oracle Database、Microsoft SQL Server、MongoDB、Redis、Cassandra、Couchbase、DynamoDB、CockroachDB、Google Spanner、TiDB、Neo4j、Amazon Neptune、ArangoDB、InfluxDB和TimescaleDB。通过分析它们的特点、优缺点及适用场景,帮助开发者选择最适合自己项目的数据库。

2024-05-30 17:26:40 1031

原创 深入探讨npm、Yarn、pnpm和npx之间的区别

本文深入探讨了npm、Yarn、pnpm和npx这四种常见的Node.js包管理工具。通过对比它们的使用场景、优缺点,帮助开发者选择适合自己项目的包管理器。npm是传统且广泛使用的工具,Yarn以快速和确定性著称,pnpm则以高效磁盘使用和并行安装见长,而npx则适用于临时执行包命令。

2024-05-30 09:46:43 771

原创 WEB安全:Content Security Policy (CSP) 详解

跨站脚本攻击 (XSS) 是一种常见的安全漏洞,攻击者通过注入恶意脚本来劫持用户会话、破坏网站内容或进行钓鱼攻击。存储型 XSS:恶意脚本被永久存储在目标服务器上(如数据库),并在用户访问时执行。反射型 XSS:恶意脚本通过 URL 参数或表单提交传递,并在服务器响应中反射给用户。DOM 型 XSS:恶意脚本通过修改客户端的 DOM 结构直接在浏览器中执行。

2024-05-28 16:23:36 1330

原创 如何将 Langfuse 链接到自有 PostgreSQL 数据库并升级 PostgreSQL 版本

在本文中,我们将介绍如何将 Langfuse 应用程序链接到自有的 PostgreSQL 数据库,并升级 PostgreSQL 以支持jsonb类型。

2024-05-28 15:58:24 1344 1

原创 使用 LangFuse 意外被挂马!我是怎么恢复系统稳定的?

在使用 LangFuse 过程中,被意外挂马!通过一番折腾服务恢复正常~ 本文将详细介绍应对恶意脚本和进程的完整方案,包括识别、清理、恢复和预防步骤。

2024-05-26 21:51:06 1156 1

原创 服务器安全审计: chkrootkit 和 rkhunter 详解

chkrootkit和rkhunter是两个广泛使用的安全工具,用于检测系统是否被Rootkit或其他恶意软件感染。本文将详细说明这两个工具的使用方法及如何解释检测结果。

2024-05-26 21:39:34 903

原创 服务器被黑?快速检测和识别系统中的恶意进程

在管理服务器时,检测和识别系统中的恶意进程至关重要。本文介绍了使用 `ps`、`top`、`htop` 等系统监控工具,分析日志文件,以及使用 `chkrootkit` 和 `rkhunter` 等安全工具的方法。通过这些步骤,可以有效地检测和处理恶意进程,确保系统的安全和稳定。

2024-05-26 21:34:37 763

原创 PostgreSQL 连接和管理问题解决方案

本文介绍了解决PostgreSQL连接问题的方法,包括修改认证方式和用户角色管理。还提供了在不同操作系统上卸载PostgreSQL的步骤。如有问题,请留言或联系我。

2024-05-23 21:42:46 687

原创 在 CentOS 上安装 PostgreSQL 的全面指南

这篇指南详细介绍了如何在 CentOS 上安装和设置 PostgreSQL。内容包括 PostgreSQL 的优势、分步安装指南、常见问题及解决方案,以及总结。通过本指南,您可以在 CentOS 上高效部署和管理 PostgreSQL 数据库。

2024-05-22 20:42:06 1323

原创 深入了解 CSS 预处理器 Sass

Sass 是一种 CSS 预处理器,它为 CSS 增加了更强大的功能和灵活性。通过使用 .scss 文件扩展名编写代码,然后编译成标准 CSS,Sass 提供了变量、嵌套、Mixins、继承以及部分文件和导入等功能。这些功能使得 CSS 代码更简洁、可重用且易于维护,是前端开发中非常实用的工具。

2024-05-21 21:14:20 724

原创 在 CentOS 服务器上部署 Quasar 和 Flask 应用的指南

这篇指南介绍了如何在 CentOS 服务器上部署使用 Quasar 和 Flask 构建的全栈应用。主要步骤包括:连接服务器、克隆代码库并设置前端、安装后端依赖、配置 PM2 管理后端进程、构建并部署前端静态文件、配置 Nginx 以公开应用。

2024-05-21 19:54:00 954

原创 什么是RPA?它为何不会取代你的工作?

RPA的价值在于节省时间,让人们能够专注于更复杂和需要决策的任务,同时帮助公司降低成本和提升生产力。

2024-05-20 19:35:59 791

翻译 OpenAI 官方提示工程指南 [译]

因为模型的上下文长度是固定的,所以它们无法一次性总结超过上下文长度减去所生成摘要长度的文本。例如,要总结一本很长的书,我们可以使用一系列的查询来分别总结书中的每个章节。这些部分的摘要可以被连结并进一步总结,形成摘要的摘要。这个过程可以递归地进行,直至整本书被总结完毕。如果在理解书中后续部分时需要前面章节的信息,那么在总结当前部分内容时附加一个前面内容的连续摘要会是一个实用的技巧。OpenAI之前利用 GPT-3 的变种对这种总结书籍的方法进行了研究。

2024-03-03 21:35:23 63

原创 从零开始:创建与维护一个成功的前端开源项目实操指南

通过本文所提供的实用方法和步骤,将学会如何选择合适的领域、构思解决方案、编写高质量代码,以及如何推广和迭代项目。这会帮助你与社区成员保持高效的沟通,快速收集问题和反馈,有助于项目的发展和问题解决。在可能的情况下,确保所做的修改不会影响项目其他部分的稳定性和兼容性。合作可以为你的项目带来更多的资源和帮助,提升项目的影响力。:将迭代后的项目版本发布到Github仓库中,并更新项目官方网站上的版本信息。:在每个迭代阶段完成后,进行充分的测试,确保修改后的项目在各种环境、浏览器和操作系统下仍然稳定可靠。

2024-01-08 11:10:42 934

原创 前端视角看 Docker : 基础命令全面指南

Docker是一种开源的容器化平台,它允许开发者将应用程序和其依赖打包在一个轻量级的、可移植的容器中。这使得应用程序在不同的环境中部署变得简单且高效。本文将介绍Docker的一些基础命令和概念,帮助初学者快速上手。

2023-12-16 10:43:25 233

原创 前端视角看 Docker :在国内的基础配置教程(含国内镜像源)

在国内使用Docker时,直接从Docker Hub拉取镜像可能会遇到网络速度慢的问题。配置国内的镜像加速器可以显著提升拉取速度。本教程将指导您完成安装Docker后的基础配置,特别是设置国内镜像加速器。

2023-12-16 10:42:22 1084

原创 前端视角看 Docker : 加速开发和部署的利器

Docker 是一个轻量级的容器化平台,它基于 Linux 容器技术,可以将应用程序及其依赖项打包成一个独立的容器。每个容器都是一个隔离的运行环境,具有自己的文件系统、网络和进程空间,可以在不同的主机上进行部署和运行。

2023-10-24 19:53:11 387

原创 Promise:手写Promise,原理分析

源码地址:https://gitee.com/lagou-19-web-paid/practice/tree/master/promise1- Promise 对象的基础模型 (同步,分析执行流程)Promise 是一个类,类接收的是一个构造函数,在执行类的时候这个构造函数也会同步执行。构造函数在同步执行的时候,会传递俩个回调函数,分别是成功回调[resolve]、失败回调[reject]。成功回调:回调函数内接收一个参数,可以是一个普通值,也可以是一个 Promise 对象。此阶段暂时只考虑

2022-01-22 00:30:40 261

原创 解决方案:uni-app非nvue模式下切换主题后,App端闪屏、闪白、闪黑、状态栏主题色不稳定

uni-app主题色的BUG解决步骤给App添加主题色的缓存标识新建 __uniappview.html 文件引入 copy-webpack-plugin 依赖创建 vue.config.js 文件状态栏颜色不稳定结论主题切换采用的方案是 css 变量使用的编译版本是 3.1.X (也就是HBuilderx的版本号)2.6.X 之后静止在js内动态引入css,所以这是一条死路问题初探:uni-app 使用非nvue模式进行编译App的话,会使用 web-view进行渲染。调试过程中发现,在进

2021-03-20 16:40:37 2510 4

原创 解决方案:js文件流、base64、Bolb、File、文件上传的使用

文件上传获取文件流创建input 获取文件input file MDN文档<input type=file name=file> <!-- 属性值可以省略引号,以达到缩减文件大小的目的 -->获取input 内的文件流返回值默认为集合(数组)document.querySelector("input[name=file]").files文件转换为Base64function isBase64(str) { if (str === '' || str.t

2020-12-14 16:38:53 4227 2

原创 webpack5: Error: Cannot find module ‘webpack-cli/bin/config-yargs‘

webpack5X版本报错:Error: Cannot find module 'webpack-cli/bin/config-yargs'错误原因:wbepack4X版本使用webpack-dev-server,启动方式为:webpack-dev-server。webpack5X修改为:webpack serverwebpack4X方式:webpack-dev-server --mode development --config config/webpack.conf.jswebpack5

2020-10-26 14:07:10 543

原创 整洁的commit 之 git rebase 的使用

干净利索是一种态度,避免出现无用的 commit 。学习使用 git rebase 命令,真的会爱上ta。合并最近俩条commit git rebase -i HEAD~2需要合并几条数据,数字改为几即可。会自动进入 vi 编辑模式pick e0b28b9 test 1pick 670239a test 2# Rebase 4195fd7..670239a onto 4195fd7 (2 commands)## Commands:# p, pick <commit> =

2020-09-18 15:10:24 1082 1

原创 实用技巧:win下的包管理工具、choco

chocolatey是win下的包管理工具,类似于centos中的yum。非常好用~1. 使用管理员身份打开powerShell2. 安装choco iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex 3. 下载需要的包|软件。资源查询下载一个dart-sdkchoco install dart-sdk注:下载资源需要管理员权限。...

2020-09-04 15:11:28 709

原创 解决方案:dockerfile无法下载依赖,docker容器内无外网

一、 查看宿主机的nameserver > cat /etc/resolv.conf search openstacklocal nameserver 100.125.3.250 nameserver 100.125.1.250 options single-request-reopen nameserver 8.8.8.8 nameserver 8.8.8.4 $systemctl restart NetworkManager二、 创建或修改 /etc/default/dock.

2020-09-02 14:00:47 2131

原创 H5:地理位置 Geolocation 详解

参考标准W3C Recommendation 8 November 2016 (GitHub reference added 31 January 2018)位置信息的获取依据W3C定义geolocation-API实现标准解释为:接口与底层位置信息无关。常见的位置信息来源包括全球定位系统(GPS)和从网络信号推断出的位置,如IP地址、RFID、WiFi和蓝牙MAC地址、GSM/CDMA小区id,以及用户输入。不能保证API返回设备的实际位置。规范中没有规定使用这些设备的先后顺序。在HTML5的实现

2020-08-25 21:51:20 4194 1

原创 实用技巧:更好的使用Cmder

Win + R 可执行cmder在系统环境变量加入cmder的安装目录即可。安装目录:D:\soft\cmder环境变量加入安装目录。右键执行Cmder使用管理员权限打开Cmd,执行:Cmder.exe /REGISTER ALL

2020-08-20 09:20:25 571

原创 Cmder 运行报错: 此时不应有 Files\Java\jdk-11.0.1\bin。

错误内容错误原因环境变量配置错误,安装JDK时自动创建的环境变量配置错误。解决方案找到错误改为正常的

2020-08-20 09:08:01 3070

原创 安装kali-linux提示vesamenu.c32 not a COM32R image

错误原因初查为老电脑原因~错误图片解决方案点击TAB键,会出现安装菜单。BOOT中输入installgui,点击回车。 boot: installgui稍等片刻会出现GUI页面,正常按照即可。

2020-08-16 18:25:23 1367

原创 linux中安装node并设置软链、全局变量

准备工作下载linux版本的node.js。在官网中点击tab中的下载。页面跳转后可看到有俩个子tab,长期支持版、当前发布版,可依据需求选择下载版本。选择下载其它历史版本的node,下拉页面可看到 以往的版本 按钮,点击后会跳转至历史版本页面,选择需要下载的版本,然后点击对应版本右方的下载按钮,选择对应的系统版本即可下载。linux较为常用的版本为 Linux 二进制文件 (x64) ,当然具体选择依据你的系统版本。在widows下访问node官网 下载,选择liunx版本。下载完成后使用

2020-08-16 17:01:37 3932

原创 实用技巧:GitHub下载加速

例子:git clone https://github.com/vuejs/vue.git一、使用码云登陆码云后,点击右上角加号从GitHub/GitLab导入仓库截取需要加速的GitHub仓库地址,点击导入等待仓库生成…使用生成仓库地址下载二、使用代理 git clone https://github.com.xxxxx/vuejs/vue.git // xxxxx 为代理地址推荐使用cnpmjs.org git clone https://github.com.

2020-06-28 11:05:48 825

原创 React Hook “useState” is called in function “xxx(函数名)” which is neither a React function

报错内容./src/Containers/device/add/index.tsx Line 284:23: React Hook "useState" is called in function "newDeviceForm" which is neither a React function component or a custom React Hook function react-hooks/rules-of-hooksSearch for the keywords to learn

2020-06-23 14:19:22 3397

原创 linux下npm/yarn运行项目报错!

解决 Error: ENOSPC: System limit for number of file watchers reached原因: linux下系统程序监视超出了默认限制大小,需要手动设置。 查询当前系统限额:cat /proc/sys/fs/inotify // 进入系统监控目录ls // 显示当前文件夹下的文件cat ./max_user_watch* // 查看当前系统用户最大限额(*代表当前系统下的文件扩充名,不同版本的linux展示的文件名称...

2020-06-12 14:25:08 923

原创 npm设置取消代理

  在内网的情况下使用代理访问外网的时候,NPM也需要配置外网才可使用。设置代理 npm config set proxy=‘代理地址’ npm config set registry=http://registry.npmjs.org 关于https ...

2020-06-07 09:14:53 980

原创 服务器开启新服务后公网无法访问!阿里云安全组,linux防火墙可能没有正确配置~

** 开启服务端口需要俩步,配置安全组、开启防火墙 **配置阿里云安全组准备工作:登陆阿里云后台,点击左上角菜单,选择云服务器。选择网络与安全-安全组配置规则3. 添加安全组规则注:1. 端口范围填写 xx/xx,可填写范围(80/8080),也可填写(8080/8080)。填写(80/8080)则开启区间所有端口,反之则只开启8080。2. 授权对象可填写指定IP,也可...

2020-02-16 18:05:37 519

空空如也

空空如也

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

TA关注的人

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