- 博客(66)
- 收藏
- 关注
原创 .NET 的免费午餐:GZip 性能提升.%
MaxKB 支持本地模型存储,并可与各种外部向量数据库集成,从而在准确度、性能和成本之间实现灵活的平衡。MaxKB 的 RAG 引擎通过结合文档分段、向量检索和生成模型,实现了高效可靠的知识问答能力。默认情况下,MaxKB 将向量模型和生成模型的二进制文件放置在 /opt/maxkb/model 目录中,并在启动时自动加载,支持动态模型切换和版本回滚。分词和分块 : 使用高效的分词器处理原始文档,并根据预定义的长度阈值对其进行分块,确保每个文档片段既不过长(导致截断)也不过短(信息不足)。
2025-11-15 16:41:41
221
原创 Chaney不会代码
若总纹理内存超限,自动降低非关键纹理的 Mip 层级(如将 MipLevelideal 强制偏移 +1)。每个导入的纹理(如 2048x2048 的 PNG)在 Unity 中生成独立的 Mipmap 金字塔(14 个层级)。:勾选 Generate Mip Maps 和 Streaming Mipmaps,设置 Mip Map Priority(优先级越高越早加载)。Unity 的 Mipmap Streaming 系统仅加载当前需要的层级(如 Mip 4-6),其他层级保留在磁盘或按需异步加载。
2025-11-15 16:37:41
316
原创 tClass()、hashCode()、clone()、notify()、notifyAll()、wait(long timeout ...
* 项目间间隔与项目与边框间隔相等 *//* 两端对齐,项目间间隔相等 *//* 每个项目两侧的间隔相等 *//* 从下到上 */justify-content: flex-start;/* 默认值:左对齐 *//* 项目的第一行文字的基线对齐 */flex-direction: row-reverse;/* 交叉轴的起点对齐 */align-items: flex-end;/* 交叉轴的终点对齐 */justify-content: flex-end;
2025-11-15 16:32:43
805
原创 vivo Pulsar 万亿级消息处理实践()-Ansible运维部署
因为终结器的执行顺序是不固定的,当SampleObject对象被终结器触发析构函数时,其他对象(比如_mo)可能也触发了析构函数。造纸在SampleObject执行Dispose时,有可能_mo的Dispose()方法被执行了2次(自身一次,外部调用一次),从而造成意外后果。释放模式是Dispose模式和析构函数(finalizer)的结合使用,目的是为了确保资源能够被正确释放,无论是通过显式的调用Dispose方法,还是在对象被垃圾回收器(GC)回收时触发析构函数。正常情况下我们的代码问题不大。
2025-11-15 16:27:36
436
原创 RAG优化实战 - LinkAI智能体平台的知识库升级之路
向量内积更是各种推荐算法、特征相似度计算的基础范式,向量外积在机械工程学中大行其道等等,这些无一证明了向量在现实的数学应用中的重要地位。需要注意的是,向量的外积仅适用于三维图形,在四维及更高维空间中,垂直于两个向量的方向不唯一,而是一个高维子空间,因此无法用一个单一向量来表示。这种商品推荐的场景便可以基于"余弦相似度"来实现,余弦相似度的核心是仅考虑向量的方向一致,忽略模长的影响。从几何图形上看,向量的外积可以垂直于两个向量组成的平面,当向量平行(共线)时,向量的外积为0。
2025-11-15 16:22:35
824
原创 Java线程池的几个常见问题
MaxKB 支持本地模型存储,并可与各种外部向量数据库集成,从而在准确度、性能和成本之间实现灵活的平衡。MaxKB 的 RAG 引擎通过结合文档分段、向量检索和生成模型,实现了高效可靠的知识问答能力。默认情况下,MaxKB 将向量模型和生成模型的二进制文件放置在 /opt/maxkb/model 目录中,并在启动时自动加载,支持动态模型切换和版本回滚。分词和分块 : 使用高效的分词器处理原始文档,并根据预定义的长度阈值对其进行分块,确保每个文档片段既不过长(导致截断)也不过短(信息不足)。
2025-11-14 14:17:21
185
原创 TypeScript 队列实战:从零实现简单、循环、双端、优先队列,附完整测试代码
若总纹理内存超限,自动降低非关键纹理的 Mip 层级(如将 MipLevelideal 强制偏移 +1)。每个导入的纹理(如 2048x2048 的 PNG)在 Unity 中生成独立的 Mipmap 金字塔(14 个层级)。:勾选 Generate Mip Maps 和 Streaming Mipmaps,设置 Mip Map Priority(优先级越高越早加载)。Unity 的 Mipmap Streaming 系统仅加载当前需要的层级(如 Mip 4-6),其他层级保留在磁盘或按需异步加载。
2025-11-14 14:12:28
259
原创 推荐系统中负采样策略及采样偏差的校正方法
* 项目间间隔与项目与边框间隔相等 *//* 两端对齐,项目间间隔相等 *//* 每个项目两侧的间隔相等 *//* 从下到上 */justify-content: flex-start;/* 默认值:左对齐 *//* 项目的第一行文字的基线对齐 */flex-direction: row-reverse;/* 交叉轴的起点对齐 */align-items: flex-end;/* 交叉轴的终点对齐 */justify-content: flex-end;
2025-11-14 14:08:05
864
原创 用户只需要知道「怎么办」,不需要知道「为什么炸了」
因为终结器的执行顺序是不固定的,当SampleObject对象被终结器触发析构函数时,其他对象(比如_mo)可能也触发了析构函数。造纸在SampleObject执行Dispose时,有可能_mo的Dispose()方法被执行了2次(自身一次,外部调用一次),从而造成意外后果。释放模式是Dispose模式和析构函数(finalizer)的结合使用,目的是为了确保资源能够被正确释放,无论是通过显式的调用Dispose方法,还是在对象被垃圾回收器(GC)回收时触发析构函数。正常情况下我们的代码问题不大。
2025-11-14 14:03:08
649
原创 从视觉、文案到交互:三步彻底去除产品AI味
向量内积更是各种推荐算法、特征相似度计算的基础范式,向量外积在机械工程学中大行其道等等,这些无一证明了向量在现实的数学应用中的重要地位。需要注意的是,向量的外积仅适用于三维图形,在四维及更高维空间中,垂直于两个向量的方向不唯一,而是一个高维子空间,因此无法用一个单一向量来表示。这种商品推荐的场景便可以基于"余弦相似度"来实现,余弦相似度的核心是仅考虑向量的方向一致,忽略模长的影响。从几何图形上看,向量的外积可以垂直于两个向量组成的平面,当向量平行(共线)时,向量的外积为0。
2025-11-14 13:58:22
354
原创 Kubernetes Ingress:管理集群外部访问的入口网关
一个或少数几个事件循环线程负责等待I/O事件,并将就绪的任务分发给工作者线程池(Worker Threads)处理,实现了I/O操作与业务逻辑的解耦。其核心价值在于,它将应用程序从低效的I/O等待中解放出来,实现了“一次等待,响应多个事件”的高效并发模式。因此,当应用程序调用epoll_wait时,内核只需返回这个就绪队列的内容,其时间复杂度为O(k)(k为活跃连接数),与被监视的文件描述符总数无关。从本质上看,I/O多路复用仍属于同步I/O,因为应用程序在调用epoll_wait时是阻塞的。
2025-11-13 16:52:55
369
原创 如何通过Python SDK在Collection中进行相似性检索
filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。
2025-11-13 16:48:43
252
原创 Microsoft 代理框架简介(预览版):让每个开发人员都能轻松使用 AI 代理
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-13 16:43:11
334
原创 arrays-with-equal-boundary-and-interior-sum/ 给你一个整数数组 capacity。 Cr ...
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-13 16:38:34
314
原创 Phinecos(洞庭散人)
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-13 16:32:11
284
原创 ASP.NET 首页性能的十大做法
根据论文及实验经验,建议将LoRA同时作用于注意力层与MLP层(如target_modules=["q_proj","k_proj","v_proj","o_proj","gate_proj","up_proj","down_proj"]),以有效提升模型精度。优化后,模型训练速度提升2倍,显存占用降低70%。传统大语言模型微调往往面临硬件要求高、迭代速度慢和资源受限等挑战,而Unsloth通过高效的底层实现和友好的接口设计,显著降低了微调的技术门槛,使更多人能够高效、低成本地训练属于自己的定制模型。
2025-11-12 15:17:18
490
原创 系统设计与规划--一点总结
一个或少数几个事件循环线程负责等待I/O事件,并将就绪的任务分发给工作者线程池(Worker Threads)处理,实现了I/O操作与业务逻辑的解耦。其核心价值在于,它将应用程序从低效的I/O等待中解放出来,实现了“一次等待,响应多个事件”的高效并发模式。因此,当应用程序调用epoll_wait时,内核只需返回这个就绪队列的内容,其时间复杂度为O(k)(k为活跃连接数),与被监视的文件描述符总数无关。从本质上看,I/O多路复用仍属于同步I/O,因为应用程序在调用epoll_wait时是阻塞的。
2025-11-12 15:11:56
414
原创 Productivity Power Tools(Visual Studio 扩展) 最新亮点
filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。
2025-11-12 15:07:02
377
原创 Session,有没有必要使用它?
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-12 15:01:43
499
原创 async 与 await 在 Web 下的应用
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-12 14:56:05
505
原创 使用浏览器的计算力,对抗密码破解
根据论文及实验经验,建议将LoRA同时作用于注意力层与MLP层(如target_modules=["q_proj","k_proj","v_proj","o_proj","gate_proj","up_proj","down_proj"]),以有效提升模型精度。优化后,模型训练速度提升2倍,显存占用降低70%。传统大语言模型微调往往面临硬件要求高、迭代速度慢和资源受限等挑战,而Unsloth通过高效的底层实现和友好的接口设计,显著降低了微调的技术门槛,使更多人能够高效、低成本地训练属于自己的定制模型。
2025-11-11 14:37:40
743
原创 我已经受够了“系统异常”!
一个或少数几个事件循环线程负责等待I/O事件,并将就绪的任务分发给工作者线程池(Worker Threads)处理,实现了I/O操作与业务逻辑的解耦。其核心价值在于,它将应用程序从低效的I/O等待中解放出来,实现了“一次等待,响应多个事件”的高效并发模式。因此,当应用程序调用epoll_wait时,内核只需返回这个就绪队列的内容,其时间复杂度为O(k)(k为活跃连接数),与被监视的文件描述符总数无关。从本质上看,I/O多路复用仍属于同步I/O,因为应用程序在调用epoll_wait时是阻塞的。
2025-11-11 14:33:20
331
原创 Dify快速搭建问答系统
filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。
2025-11-11 14:28:46
743
原创 云原生环境中的镜像兼容性(NFD项目)
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-11 14:23:44
836
原创 网上查了一些资料,TTF转点阵字体,绕不开的就是描边矢量化。这个倒是有工具Potrace可以做。但是转成的点阵字,是按比例缩放的,在 ...
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-11 14:18:42
276
原创 ivate Approximate Nearest Neighbor Search in the Single Server Setting
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-10 15:03:48
790
原创 Docker 容器化
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-10 14:59:30
798
原创 AI 开发者工具 TOP 榜: 大分类 + 种工具
filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。
2025-11-10 14:44:06
279
原创 VTable-Sheet:重新定义Web电子表格的开源解决方案
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-10 14:38:49
310
原创 【光照】[物理模型]中的[BRDF]是什么?
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-10 14:31:51
655
原创 同一设备多账号登录,如何避免消息推送“串门”?
根据论文及实验经验,建议将LoRA同时作用于注意力层与MLP层(如target_modules=["q_proj","k_proj","v_proj","o_proj","gate_proj","up_proj","down_proj"]),以有效提升模型精度。优化后,模型训练速度提升2倍,显存占用降低70%。传统大语言模型微调往往面临硬件要求高、迭代速度慢和资源受限等挑战,而Unsloth通过高效的底层实现和友好的接口设计,显著降低了微调的技术门槛,使更多人能够高效、低成本地训练属于自己的定制模型。
2025-11-09 15:11:28
302
原创 从到自定义文字排版引擎:原理篇
一个或少数几个事件循环线程负责等待I/O事件,并将就绪的任务分发给工作者线程池(Worker Threads)处理,实现了I/O操作与业务逻辑的解耦。其核心价值在于,它将应用程序从低效的I/O等待中解放出来,实现了“一次等待,响应多个事件”的高效并发模式。因此,当应用程序调用epoll_wait时,内核只需返回这个就绪队列的内容,其时间复杂度为O(k)(k为活跃连接数),与被监视的文件描述符总数无关。从本质上看,I/O多路复用仍属于同步I/O,因为应用程序在调用epoll_wait时是阻塞的。
2025-11-09 15:07:05
311
原创 从零开始学习 ASP.NET MVC . (三) Controller/Action 深入解析与
filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。
2025-11-09 15:02:13
893
原创 [开发故事]第四回:应用反射在运行时动态获取类型信息
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-09 14:56:56
684
原创 工作感言:任务分配及管理
但是每个 LLM 框架的 Plugin 实现方式不一样,其使用和实现机制跟语言特性深度绑定,不能实现跨服务跨平台使用,所以出现了 MCP Tool, MCP Tool 是对标 Plugin 的一类功能,主要目的跟 Plugin 一样提供 Function,但是 MCP 有统一协议标准,跟语言无关、跟平台无关,但是 MCP 也不是完全替换 Plugin ,Plugin 依然具有很大的用武之地。
2025-11-09 14:51:54
571
原创 Windows Phone 项目实战之账户助手
filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。
2025-11-08 14:11:58
570
原创 Deadlock的一些总结
而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。
2025-11-08 14:06:52
843
原创 Django模型迁移指南:从命令用法到最佳实践
如下面的例子中,如果将34单独合并b,外层再包裹a似乎是合理的,但是将34先包裹a后再合并5的b也是合理的,甚至有没有办法将67一并合并,因为其都存在b标签。如果仅存在单个文本节点的情况下,是符合设计的结构,而如果是存在多个节点,除了Void/Embed节点的情况外,则说明DOM结构被破坏了,这里我们就需要移除掉多余的节点。而当我们输入完成后,数据结构Model层的内容是会将文本放置于text前,这部分则是编辑器来控制的行为,这跟我们输入非中文的表现是一致的,也是符合预期表现的。
2025-11-07 16:05:39
550
原创 Java编译器优化秘籍:字节码背后的IR魔法与常见技巧
除了这些额外的功能,还有原本的浏览器基于DOM实现的基本功能,例如输入法的支持、复制粘贴的支持、拖拽的支持等等。而基本的Canvas是无法支持这些功能的,特别是输入法IME的支持,以及文本选区的实现,都需要很复杂的交互实现,这样的成本自然不会是很容易接受的。毕竟如果在基于MVC模式的编辑器实现中,会处理掉对Model来说无效的数据内容,这样就导致原本的HTML内容丢失,因此在这种需求背景下依赖浏览器的默认行为可能是最有效的,这种情况下我们可能主要关注的就是XSS的处理了。
2025-11-07 16:00:33
454
原创 SpringBoot @Async 异步处理:从使用到原理与最佳实践
除了这些额外的功能,还有原本的浏览器基于DOM实现的基本功能,例如输入法的支持、复制粘贴的支持、拖拽的支持等等。而基本的Canvas是无法支持这些功能的,特别是输入法IME的支持,以及文本选区的实现,都需要很复杂的交互实现,这样的成本自然不会是很容易接受的。毕竟如果在基于MVC模式的编辑器实现中,会处理掉对Model来说无效的数据内容,这样就导致原本的HTML内容丢失,因此在这种需求背景下依赖浏览器的默认行为可能是最有效的,这种情况下我们可能主要关注的就是XSS的处理了。
2025-11-06 13:50:55
596
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅