首页
热点话题
全栈
开发工具
经典语录
前端技术
后端技术
智能体
搜索
登录
搜索
一笑痕
人生若只如初见,
是可喜亦或者是可悲?
累计撰写
259
篇文章
累计收到
7
条评论
首页
热点话题
全栈
开发工具
经典语录
前端技术
后端技术
智能体
包含标签 【Node.js】 的文章
2026-11-4
Agent 执行前,审批必须绑定完整调用内容
人工审批如果只记住工具名,执行前参数仍可能被替换。用 Node 固定桩对工具名与参数做 SHA-256 指纹,再在分发前复核,拦住审批后把归档改成删除的变更。
2026年-11月-4日
3 阅读
0 评论
智能体
2026-11-4
execFile 保住参数边界,exec 会交给 shell 重读
execFile 把可执行文件和参数数组分开传递,空格与 shell 元字符留在参数里;exec 则把整条字符串交给 shell 解析。用安全的 printf 本机演示两者如何拆分单词、展开变量,以及为什么外部输入不该拼进命令字符串。
2026年-11月-4日
9 阅读
0 评论
后端技术
2026-10-28
JSON 里字节还在,Buffer 类型没回来
Buffer 经 JSON.stringify 后会变成带有 type 和 data 的普通对象,JSON.parse 不会直接得到 Buffer;把解析结果交给 Buffer.from,Node 能按这份结构还原字节,但得到的是一份新内存。
2026年-10月-28日
27 阅读
0 评论
后端技术
2026-10-27
给 process.env 赋 undefined,变量会消失吗
process.env 的属性读出来是字符串。给属性赋 undefined 不会删除键,而是写入字面值 "undefined";需要清理时应使用 delete,并在配置入口明确检查空值。
2026年-10月-27日
35 阅读
0 评论
后端技术
2026-10-25
旧文件写短了,尾部字节还留在磁盘上
用较短内容覆盖旧文件时,文件打开方式决定旧尾部是否保留。Node.js 本机实验对比 r+、w、a 三种写入,展示为何更新状态文件时不能把覆盖误当成截断。
2026年-10月-25日
43 阅读
0 评论
后端技术
2026-10-24
Agent 历史做了浅拷贝,检查点仍会被改写
Agent 在一次运行中保留对话,同时为检查点复制历史;只复制外层数组并不能隔离消息对象,后续改写会污染原记录。用深拷贝建立快照,并明确哪些数据需要共享。
2026年-10月-24日
46 阅读
0 评论
智能体
2026-10-24
URLSearchParams 不会展开对象里的数组
把对象交给 URLSearchParams 时,数组不会自动展开成同名参数,而会先变成逗号连接的字符串。用 append 或键值对序列才能明确表达重复键,边界值也需要提前转换。
2026年-10月-24日
45 阅读
0 评论
后端技术
2026-10-22
constructor 混进工具表,调度会走错函数
普通对象直接按工具名取函数,会把原型链上的 constructor、toString 也当成可调用项。Node 固定桩对照 Object.hasOwn 的结果;模型和真实 Agent 框架没有参与。
2026年-10月-22日
48 阅读
0 评论
智能体
2026-10-22
HEAD 回了完整长度,响应体却是空的
Node.js 的 HTTP 服务收到 HEAD 时,仍可返回与 GET 相同的 Content-Length,但响应体会被省略。本机实验对照两种方法的状态码、头部和实际字节数,也检查了服务端处理函数是否仍会运行。
2026年-10月-22日
49 阅读
0 评论
全栈
2026-10-21
服务器回 417 时,上传正文还没发出去
大请求体发出前,客户端可以用 Expect: 100-continue 先等待服务器许可。本文用 Node.js 本机实验验证接受与拒绝两条路径,并说明浏览器 fetch 与原生 HTTP 客户端的能力边界。
2026年-10月-21日
48 阅读
0 评论
全栈
2026-10-21
URL 解析先折叠了路径,验权不能再看原字符串
Node 的 WHATWG URL 会在 pathname 暴露前处理点路径段,百分号编码的斜杠却保留到解码阶段;如果路由、鉴权和文件映射各自解码一次,路径边界就会漂移。本文用本机 Node 输出拆开这几步。
2026年-10月-21日
53 阅读
0 评论
后端技术
2026-10-20
timingSafeEqual 要求两边字节数相等
crypto.timingSafeEqual 在两个 Buffer 长度不等时抛 RangeError,不返回 false。传字符串会先报类型错,Buffer.from 解 hex 遇到坏字符会静默截断,拿字符数做长度判断也会失效。
2026年-10月-20日
48 阅读
0 评论
后端技术
2026-10-19
别把 req.headers 当成原始报文
Node 的 req.headers 会把字段名转小写,并按字段类型合并重复项。req.headersDistinct 保留每个值,rawHeaders 还保留原始字段名与顺序,签名和审计代码别拿错对象。
2026年-10月-19日
59 阅读
0 评论
后端技术
2026-10-17
中文和 emoji 把 Content-Length 算大了
JavaScript 的 string.length 数的是 UTF-16 代码单元,HTTP Content-Length 数的是消息正文的字节。中文和 emoji 会让两种长度分开,Node.js 用 Buffer.byteLength(body, 'utf8') 才能得到 UTF-8 正文长度。
2026年-10月-17日
57 阅读
0 评论
后端技术
2026-10-16
Node fetch 发 ReadableStream,漏写 duplex 会先报错
Node v26.8.1 用 ReadableStream 作为 POST 请求体时,少了 duplex 会在请求发出前抛 TypeError;补上 duplex: 'half' 后,本机服务端收到 12 字节正文并返回 200。
2026年-10月-16日
146 阅读
0 评论
全栈
2026-10-16
Buffer.from 解码脏 base64,坏字符不一定截断
Node 的 Buffer.from(text, 'base64') 会忽略非法字符,也接受缺失填充与 URL 安全字母表。脏字符后的内容仍可能参与解码,不同文本也可能得到相同字节。用本机逐项验证。
2026年-10月-16日
66 阅读
0 评论
后端技术
2026-10-15
Promise.race 超时后,fetch 会自动取消吗
Promise.race 只决定哪个 Promise 的结果先交给调用方,不会替 fetch 取消网络请求。用本地 HTTP 服务对照超时竞速与 AbortController,观察响应完成和连接关闭。
2026年-10月-15日
49 阅读
0 评论
智能体
2026-10-15
压缩流先结束,响应却还没写完
gzip 的 end 只说明压缩流不再产出数据,不能代替 HTTP 响应的完成信号。用本机 HTTP 服务记录事件顺序,并对收到的原始字节解压验证。
2026年-10月-15日
49 阅读
0 评论
后端技术
2026-10-14
延时写成 30 天,Node 只等了 1 毫秒
2147483647 毫秒是 Node 定时器延时的上限,折合 24.8551 天。官方文档写着:大于上限或小于 1 的延时会被设成 1。本机把边界值、负数、NaN 和字符串逐个跑了一遍。
2026年-10月-14日
55 阅读
0 评论
后端技术
2026-10-14
SSE 的 data 行断在分片边界,解析器当没看见
手工构造的 SSE 流按 1、3、7 字节切开,喂给四种解析器:每片各自切行的丢光事件,跨分片缓冲到行的把多行 data 多派发一条,空行派发却逐片解码的把汉字拆出替代符,另测换行符混用与心跳行。
2026年-10月-14日
54 阅读
0 评论
智能体
1
2