- 博客(47)
- 收藏
- 关注
原创 Actix-web 中的权限中间件实现
本文介绍了如何在Actix-web框架中实现权限中间件。主要内容包括:定义中间件结构体Auth和AuthMiddleware;实现Transform和Service trait来处理请求;编写提取令牌的辅助函数;以及将中间件集成到Actix-web应用中。该中间件通过检查请求路径和验证令牌来实现权限控制,保护特定路由仅允许授权用户访问。通过.wrap(Auth)方法,开发者可以方便地将该权限中间件添加到应用中,实现灵活的权限管理机制。
2025-06-12 10:05:46
98
原创 在 Actix-web 中使用 Server-Sent Events (SSE) 实现实时通知
本文介绍了如何在Actix-web框架中实现Server-Sent Events(SSE)实时通信。服务器端通过SseNotifier结构体管理广播通道,创建SSE流处理器将消息转换为SSE格式事件流。更新用户信息时,服务器会向所有连接的客户端推送JSON格式通知。客户端使用EventSource API接收并显示实时消息。这种方案适用于需要服务器向客户端单向推送数据的场景,如实时通知、状态更新等,具有实现简单、兼容性好等优点。
2025-06-12 10:00:55
215
原创 在一台服务器上通过 Nginx 配置实现不同子域名访问静态文件和后端服务
为了实现通过不同子域名访问静态文件和后端服务,首先需要在域名注册商或 DNS 服务商处为子域名 blog.xxx.com 和 api.xxx.com 配置 A 记录,指向服务器 IP 地址。接着,在 Nginx 中进行配置:对于 blog.xxx.com,创建一个配置文件,监听 80 端口,并指定静态文件的存放路径;对于 api.xxx.com,同样创建配置文件,监听 80 端口,并通过 proxy_pass 将请求转发到本地后端服务端口,同时设置相关请求头。通过以上步骤,可以在同一服务器上通过不同子域名分
2025-05-08 22:32:59
694
原创 基于 Node.js 的 CSDN 文章列表获取代码解析
这段代码的主要功能是向 CSDN 的指定 API 发起 GET 请求,获取文章列表相关信息,包括文章的 ID、发布时间和标题等。在请求过程中,涉及到请求头部的处理、HMAC 签名的生成以及对 API 响应数据的解析和提取。
2025-05-08 17:58:46
823
原创 使用cesium设置第一视角
在 Cesium 中,借助结合合理的视角偏移设置,可以方便地实现第一视角跟随模型移动的效果。这一功能在众多地理空间可视化、模拟仿真等应用场景中都有着重要的价值,通过进一步的优化和扩展,还能够满足更加多样化和复杂的交互需求,为用户提供简单而强大的第一视角观察体验。随着对 Cesium 功能的深入挖掘和应用场景的不断拓展,相信会解锁更多基于第一视角的创新应用方式。
2025-04-27 18:40:27
867
原创 Node.js 应用部署:镜像体积优化与安全的多阶段构建探索
在开发 Node.js 应用时,部署过程中的镜像体积优化和安全性保障是至关重要的环节。本文将通过两种不同的 Docker 部署方式,深入探讨如何实现高效的镜像体积优化和安全的部署环境。
2025-04-27 17:18:28
924
原创 使用Nestjs, Bun 和 NCC 打造高效的 Node.js 应用构建流程
在现代 Node.js 应用开发中,构建和打包流程的效率对项目的迭代速度和部署效果有着重要影响。本文将介绍如何结合 Nestjs ,Bun 和 NCC 工具,构建出高效且优化的 Node.js 应用。
2025-04-27 17:17:32
441
原创 Rust实现高性能目录扫描工具ll的技术解析
项目通过Rust的安全并发特性,实现了比传统ls工具快300%的目录扫描速度,适合处理大规模文件系统场景。
2025-04-24 10:18:19
906
原创 `ConstantProperty` 的使用与应用
是 Cesium 中用于表示实体属性的类。它表示一个实体的属性(如方向、颜色等)是固定的,不会随时间变化。与动态属性(如 )不同, 适用于那些属性不会变化的实体。 通常用于以下场景:以下是一个使用 设置实体方向的示例:4. 与动态属性的对比 和动态属性(如 )的主要区别在于:
2025-04-08 18:02:12
177
原创 `ConstantPositionProperty` 的使用与应用
是 Cesium 中用于表示实体位置的属性类。它表示一个实体在三维空间中的位置是固定的,不会随时间变化。与动态位置属性(如 )不同, 适用于那些位置不会变化的实体。 通常用于以下场景:以下是一个使用 设置实体位置的示例:4. 与动态位置属性的对比 和动态位置属性(如 )的主要区别在于:通过使用 ,可以高效地表示固定位置的实体,避免不必要的性能开销。
2025-04-08 18:01:46
356
原创 如何使用 Bash 脚本自动化清理 Nacos 日志文件
通过上述 Bash 脚本,我们可以实现 Nacos 日志文件的自动化清理,确保系统磁盘空间的合理使用,同时保留必要的日志文件以备后续分析。该脚本简单易用,可以根据实际需求进行调整和扩展。对于需要管理大量日志文件的系统,这种自动化清理方法可以显著提高运维效率,降低系统维护的复杂性。
2025-03-29 11:21:50
836
原创 Vue 3 自定义指令:实现自动滚动效果
指令的主要功能是监听页面大小的变化,并根据内容的宽度和容器的宽度自动为文本内容添加或移除滚动动画的 CSS 类。当内容宽度超出容器宽度时,它会为内容添加一个滚动动画类,使得文本能够在容器中自动滚动展示;而当内容宽度小于或等于容器宽度时,它则会移除滚动动画类,避免不必要的动画效果。通过本文的深入解析,我们了解了 Vue 3 自定义指令的实现原理、使用方法以及它的优势和应用场景。这个指令为我们提供了一种简单而有效的解决方案,用于在有限的空间内展示较长的文本内容,并且能够自动适应不同的屏幕尺寸。
2025-03-21 14:51:53
991
原创 利用 @eslint/eslintrc 实现 ESLint9的适配
通过以上对实际 ESLint 配置代码的解析,我们深入理解了如何利用 @eslint/eslintrc 插件来实现高效、灵活且可维护的代码规范管理。在现代前端开发中,随着项目复杂度的不断提高和团队协作的日益紧密,合理地运用这样的配置方式对于保证代码质量和团队效率具有重要意义。未来,随着 ESLint 生态系统的不断发展和完善,@eslint/eslintrc 插件也将持续进化,为开发者提供更加强大和便捷的配置管理功能,助力前端代码质量的提升。
2025-03-20 20:43:31
1311
原创 vue-tsc 使用问题及解决方法
在使用vue-tsc进行项目编译时,如果不小心使用了-b参数,可能会产生一些不好的影响。比如,可能会生成一些额外的、不需要的文件,如.d.ts文件、.js.map文件等,这些文件可能会干扰项目的正常运行或增加项目的复杂性。
2025-03-20 16:05:51
949
原创 cesium中的CallbackProperty
是一个属性(Property),其值由一个回调函数延迟计算。这意味着,每当属性被访问时,都会调用一个函数来计算其值。这种机制使得我们可以实时地改变实体的状态,而不需要频繁地重新设置整个属性。
2024-11-29 16:41:36
1342
原创 在Cesium中,将点击的位置转换为经纬度
这样,当用户在Cesium场景中点击时,控制台就会输出点击位置的经纬度和高度信息。方法来获取点击位置的笛卡尔坐标(Cartesian3)。方法将笛卡尔坐标转换为地理坐标(Cartographic)。对象,如果点击的位置在地球表面之外,则返回。方法将地理坐标的经度和纬度转换为度数。:当用户点击场景时,使用。
2024-11-29 16:41:17
557
原创 在cesium中使用CustomDataSource
是 Cesium 中一个强大的工具,它允许用户方便地管理自定义的数据源,如线条、点和广告牌等。通过使用,您可以轻松地添加、修改和删除这些可视化元素。
2024-11-27 09:01:35
622
原创 C++代码编译为 WebAssembly
3.1. 对 c++代码进行改造`在默认的情况下,编译之后只有 main 函数会保存,其他函数不会保存,如果需要保存其他函数,需要在 c++代码中添加以下代码。4.2. 在 js 中有两种方式可以调用 wasm 代码: 方法一只能使用 number 类型。4.编译完成后,会在当前目录生成 main.html 文件,用浏览器打开即可运行。这样编译之后,function1 会保存下来,function2 不会保存下来。4.1. 如果需要在 js 调用的时候传入参数,可以在 js 代码中使用。
2024-11-26 10:32:53
566
原创 Tauri 2.0.0-rc 使用webviewWindow 窗口
本文将介绍如何使用 tauri 实现 webviewWindow 窗口。
2024-09-29 08:20:10
2186
13
原创 Tauri 2.0.0-rc 安装全局快捷方式插件
Tauri 2.0.0-rc 引入了全局快捷方式插件允许你在你的应用中注册全局快捷方式,并在用户按下这些快捷方式时触发 JavaScript 回调。首先,你需要在你的 Rust 项目中安装全局快捷方式插件。Cargo.tomllib.rs推荐使用这个这样刷新页面的时候,就不用重新注册快捷键了。
2024-09-28 09:21:47
1311
原创 Tauri 2.0.0-rc 使用open命令打开文件
Tauri 2.0.0-rc 引入了插件系统,允许开发者使用 JavaScript 编写插件,并在 Rust 代码中注册。本文将介绍如何使用open命令打开浏览器或文件。
2024-09-28 09:16:00
715
2
原创 Tauri 定位器插件使用指南
Tauri 的定位器插件允许你将应用窗口定位到屏幕的特定位置或相对于托盘图标的位置。以下是如何在 Tauri 应用程序中使用定位器插件的步骤。
2024-09-25 08:46:28
684
原创 Tauri 2.0.0-rc 自动启动设置指南
Tauri 应用程序可以通过使用自动启动插件来实现在系统启动时自动运行。以下是如何设置 Tauri 应用程序自动启动的步骤。
2024-09-25 08:40:48
732
原创 tauri版本2的系统托盘
通过上述两种方式,你可以在 Tauri 2.0.0-rc 应用程序中实现系统托盘功能。第一种方式适用于简单的托盘图标显示,而第二种方式提供了更多的自定义和交互可能性。根据你的应用需求选择合适的实现方参考资料。
2024-09-24 10:34:58
1628
5
原创 tarui嵌入终端
通过这种优化,我们可以在 Tauri 2.0.0-rc 应用程序中执行命令行命令而不显示终端窗口。这使得用户体验更加流畅,避免了不必要的界面干扰。确保在打包应用程序后,测试命令执行是否正常,以验证优化是否成功。如果你有任何问题或需要进一步的帮助,请随时联系。
2024-09-24 10:34:02
735
原创 cesium 使用PinBuilder 自定义广告牌内容
如果没有形状要求,可以使用cesium官方的广告牌,只需要修改内容跟颜色就可以了。cesium提供的广告牌。
2024-08-08 09:45:38
319
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人