- 前端做 Base64 编解码,编码那头调通了,解码这边却常翻车。我有一次从别处复制了一段 Base64 回来,直接扔给 atob,结果直接报错——不是数据坏了,是复制过来的文本里混进了换行和空格。这种换行空格哪来的?很多地方展示 Base64 会按固定长度折行,复制粘贴、从邮件和聊天记录里拷出来,中间就带上了换行;手敲的时候顺手多按个空格,也一样。atob 对这些空白字符不宽容,碰上就抛错,... 前端做 Base64 编解码,编码那头调通了,解码这边却常翻车。我有一次从别处复制了一段 Base64 回来,直接扔给 atob,结果直接报错——不是数据坏了,是复制过来的文本里混进了换行和空格。这种换行空格哪来的?很多地方展示 Base64 会按固定长度折行,复制粘贴、从邮件和聊天记录里拷出来,中间就带上了换行;手敲的时候顺手多按个空格,也一样。atob 对这些空白字符不宽容,碰上就抛错,...
- 离线优先不是把数据塞进 localStorage 就完事。这篇讲清楚 IndexedDB 的事务边界、数据库版本迁移怎么写,以及离线修改和线上数据冲突时怎么合并。 离线优先不是把数据塞进 localStorage 就完事。这篇讲清楚 IndexedDB 的事务边界、数据库版本迁移怎么写,以及离线修改和线上数据冲突时怎么合并。
- #Python的GILGIL是CPython的解释器全局锁,同一时刻只有一个线程执行字节码。CPU密集型任务适合用multiprocessing绕开,IO密集型多线程仍然有效。---*每日一个技术小知识,第27篇。*... #Python的GILGIL是CPython的解释器全局锁,同一时刻只有一个线程执行字节码。CPU密集型任务适合用multiprocessing绕开,IO密集型多线程仍然有效。---*每日一个技术小知识,第27篇。*...
- 本文梳理在华为云对象存储OBS上托管静态网站的完整流程,并结合官方文档总结默认域名强制下载、ICP备案、CDN响应头等五个常见坑及排查思路。 本文梳理在华为云对象存储OBS上托管静态网站的完整流程,并结合官方文档总结默认域名强制下载、ICP备案、CDN响应头等五个常见坑及排查思路。
- 前端做 Base64 编解码,英文数字随便玩,一碰中文就翻车。 前端做 Base64 编解码,英文数字随便玩,一碰中文就翻车。
- 实测 pdf-lib 1.17.1:标准字体画英文、嵌入 Noto Sans SC 画中文、给已有 PDF 盖章、合并两份 PDF,全部跑通。顺带踩到 5 个坑:Helvetica 画中文直接抛错、不写 subset 整个字体会塞进 PDF、坐标原点在左下角等。 实测 pdf-lib 1.17.1:标准字体画英文、嵌入 Noto Sans SC 画中文、给已有 PDF 盖章、合并两份 PDF,全部跑通。顺带踩到 5 个坑:Helvetica 画中文直接抛错、不写 subset 整个字体会塞进 PDF、坐标原点在左下角等。
- 不依赖任何框架和构建工具,用单个 HTML 文件实现完整 2048:四方向滑动合并的统一算法、撤销栈设计、移动端手势与响应式字号适配,以及几个容易忽略的细节坑。 不依赖任何框架和构建工具,用单个 HTML 文件实现完整 2048:四方向滑动合并的统一算法、撤销栈设计、移动端手势与响应式字号适配,以及几个容易忽略的细节坑。
- cloud-init 能在 ECS 首次启动时自动完成软件安装与配置,但 apt 交互提示、Nginx 默认目录、服务启动顺序这三个地方最容易翻车。本文记录实际排查过程与验证方法。 cloud-init 能在 ECS 首次启动时自动完成软件安装与配置,但 apt 交互提示、Nginx 默认目录、服务启动顺序这三个地方最容易翻车。本文记录实际排查过程与验证方法。
- 会议一开就收不住,超时半小时才发现。纯前端写了个会议计时器:设好会议时长,剩余时间用进度条走,越接近结束颜色从绿变黄变红,到点响铃提醒散会。技术内核是倒计时 + 阈值变色 + Web Audio 铃声 + 结束自动停。 会议一开就收不住,超时半小时才发现。纯前端写了个会议计时器:设好会议时长,剩余时间用进度条走,越接近结束颜色从绿变黄变红,到点响铃提醒散会。技术内核是倒计时 + 阈值变色 + Web Audio 铃声 + 结束自动停。
- #环境变量为什么优先把密钥、地址、开关放进环境变量而非硬编码,同一份程序可以在开发、测试、生产不同环境直接部署。12-Factor应用模型的第一条就是代码与配置分离。---*每日一个技术小知识,第25篇。*... #环境变量为什么优先把密钥、地址、开关放进环境变量而非硬编码,同一份程序可以在开发、测试、生产不同环境直接部署。12-Factor应用模型的第一条就是代码与配置分离。---*每日一个技术小知识,第25篇。*...
- 记录一次真实的前端性能优化:从 Lighthouse 42 分到 94 分,LCP 从 4.2s 降到 1.1s,包含 bundle 瘦身、图片 WebP、关键 CSS 内联、主线程拆分等完整步骤和数据。 记录一次真实的前端性能优化:从 Lighthouse 42 分到 94 分,LCP 从 4.2s 降到 1.1s,包含 bundle 瘦身、图片 WebP、关键 CSS 内联、主线程拆分等完整步骤和数据。
- 实测 MkDocs 1.6.1 搭文档站:new/build/serve,admonition 提示块不渲染、中文界面要补装 babel、端口被占时服务假启动,六个坑附复现与对策。 实测 MkDocs 1.6.1 搭文档站:new/build/serve,admonition 提示块不渲染、中文界面要补装 babel、端口被占时服务假启动,六个坑附复现与对策。
- 为什么做番茄钟专注工作法里番茄钟是最容易落地的:25 分钟专注 + 5 分钟休息,循环四次后长休息一次。市面上的番茄钟 App 大多要登录、要同步,反而把简单的事情复杂化。我的目标是做一个单文件、零依赖、离线可用的番茄钟网页:打开即用,数据只存在浏览器本地。 功能拆解核心功能只有四个:计时器:25/5/15 三档时长可切换,开始/暂停/重置任务清单:输入任务名,完成后勾选,清空已完成浏览器... 为什么做番茄钟专注工作法里番茄钟是最容易落地的:25 分钟专注 + 5 分钟休息,循环四次后长休息一次。市面上的番茄钟 App 大多要登录、要同步,反而把简单的事情复杂化。我的目标是做一个单文件、零依赖、离线可用的番茄钟网页:打开即用,数据只存在浏览器本地。 功能拆解核心功能只有四个:计时器:25/5/15 三档时长可切换,开始/暂停/重置任务清单:输入任务名,完成后勾选,清空已完成浏览器...
- 在现代 Web 开发中,提升首屏加载速度与用户交互体验是核心目标之一。关键渲染路径(Critical Rendering Path)是指浏览器从接收 HTML、CSS、JavaScript 到最终在屏幕上绘制像素的全过程。本文总结常见的优化策略:1. 资源加载优化:资源预加载与延迟加载脚本(defer/async);2. 关键 CSS 抽取与代码分割;3. 静态资源 CDN 加速与持久化缓存... 在现代 Web 开发中,提升首屏加载速度与用户交互体验是核心目标之一。关键渲染路径(Critical Rendering Path)是指浏览器从接收 HTML、CSS、JavaScript 到最终在屏幕上绘制像素的全过程。本文总结常见的优化策略:1. 资源加载优化:资源预加载与延迟加载脚本(defer/async);2. 关键 CSS 抽取与代码分割;3. 静态资源 CDN 加速与持久化缓存...
- 两个应用挂在同一域名不同路径,页面却打不开?记录一次 Service Worker 导航兜底导致的路径劫持排查,给出定位思路与三种隔离方案。 两个应用挂在同一域名不同路径,页面却打不开?记录一次 Service Worker 导航兜底导致的路径劫持排查,给出定位思路与三种隔离方案。
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签