碎碎念: 26-02-18-2

发表于 2026-02-18 15:35 更新于 2026-02-18 15:35 449 字 3 min read

碎碎念: 26-02-20碎碎念: 26-02-18-2碎碎念: 26-02-18碎碎念: 26-02-17碎碎念: 26-02-15碎碎念: 26-02-14碎碎念: 26-01-16 朋友、人际交往碎碎念: 26-01-01 2025年,年度回顾碎碎念: 2025-10-19碎碎念: 2025-10-17 (补)碎碎念: 2025-10-13 (补、密码保护)碎碎念: 请原谅内向的我碎碎念: 2025-09-23碎碎念: 完美移植 PureSuck 主题碎碎念: 2025-07-16碎碎念: 2025-07-05碎碎念: 2025-06-13碎碎念: 2025-06-09碎碎念: 2025-05-18 一张傍晚的照片碎碎念: 2025-05-05碎碎念: 2025-04-30碎碎念: 2025-04-20碎碎念: 2025-04-19碎碎念: 2025-04-13碎碎念: 2025-03-09-2碎碎念: 2025-03-09碎碎念: 我太懒了,连个年终总结都没写碎碎念: 2024-11-17碎碎念: 2024-10-8 至 2024-10-18碎碎念: 2024-09-29碎碎念: 2024-09-24碎碎念: 2024-09-23碎碎念: 2024-10-05碎碎念: 2024-10-03 喝上了芋泥啵啵奶绿碎碎念: 2024-10-03 愿世界永无战事碎碎念: 2024-09-15碎碎念: 2024-09-01碎碎念: 2024-08-29 谁动我歌单?碎碎念: 2024-08-29 我抑郁症?碎碎念: 2024-08-29碎碎念: 2024-08-26碎碎念: 2024-08-22碎碎念: 2024-08-18碎碎念: 2024-08-11碎碎念: 2024-08-08碎碎念: 2024-08-06 梦碎碎念: 2024-08-06碎碎念: 2024-08-04碎碎念: 2024-07-21碎碎念: 2024-07-13碎碎念: 2024-07-08碎碎念: 2024-07-03碎碎念: 2024-07-02碎碎念: 2024-07-01碎碎念: 2024-06-30碎碎念: 2024-06-28碎碎念: 2024-06-27碎碎念: 2024-06-26碎碎念: 2024-06-22碎碎念: 2024-06-20碎碎念: 2024-06-18碎碎念: 2024-06-17碎碎念: 2024-06-15碎碎念: 2024-06-14碎碎念: 2024 年的高三喊楼碎碎念: 2024-06-06碎碎念: 2024-05-30 一碎碎念: 2024-05-30 二碎碎念: 2024-05-27碎碎念: 2024-05-26碎碎念: 2024-05-23碎碎念: 2024-05-22碎碎念: 2024-05-19碎碎念: 2024-05-17碎碎念: 2024-05-14碎碎念: 2024-05-13碎碎念: 2024-05-12碎碎念: 2024-05-10碎碎念: 2024-05-08碎碎念: 2024-05-06碎碎念: 2024-05-05 M:8 三碎碎念: 2024-05-05碎碎念: 2024-05-05 M:7 二碎碎念: 2024-05-05 M:7 一碎碎念: 2024-05-02 星期四 M:3 小雨碎碎念: 2024-04-29 M:7碎碎念: 2024-04-27 M:8
This post is not yet available in English. Showing the original.
我在上篇碎碎念里提到了 umami v3 新增的链接追踪(Link Tracking)、像素追踪(Pixel Tracking)有 Bug,也尝试修复了一下。今天发现,该 Bug 其实并没有完全修复,有时还是压根就没有记录到像素追踪的数据。为什么昨天就以为修复了呢?因为我发现关了 IGNORE_IP 后,在浏览器打开了几次跟踪链接,都没有问题。就以为是IGNORE_IP 的代码出了问题。修复了 IGNORE_IP 后,在浏览器打开跟踪链接,就可以正常记录到数据了。就这么以为找出了问题所在了。

我在上篇碎碎念里提到了 umami v3 新增的链接追踪(Link Tracking)、像素追踪(Pixel Tracking)有 Bug,也尝试修复了一下。

今天发现,该 Bug 其实并没有完全修复,有时还是压根就没有记录到像素追踪的数据。

为什么昨天就以为修复了呢?因为我发现关了 IGNORE_IP 后,在浏览器打开了几次跟踪链接,都没有问题。就以为是 IGNORE_IP 的代码出了问题。修复了 IGNORE_IP 后,在浏览器打开跟踪链接,就可以正常记录到数据了。就这么以为找出了问题所在了。

然后今天我在无痕模式下打开跟踪链接,发现都没有记录到追踪的数据。又在 itdog 上测试了一下,看到统计数据还是 0。

然后炸毛了,这啥鬼!

再去翻看那鬼代码,不断地打日志(log),

src\app\api\send\route.ts 里,看到 await parseRequest(request, schema, { skipAuth: true }) 返回了个 {error},再继续在 parseRequest 的实现里打日志(log),发现是里面的 schema.safeParse(isGet ? query : body) 抛出了错误。从打的日志中可看到 "message": "Invalid input: expected string, received null"

2026-02-18 05:59:02.065 [error] 2026-02-18T05:59:02.063Z umami:my {
  success: false,
  error: Error [ZodError]: [
    {
      "expected": "string",
      "code": "invalid_type",
      "path": [
        "payload",
        "referrer"
      ],
      "message": "Invalid input: expected string, received null"
    }
  ]
      at new ZodError (.next/server/chunks/[root-of-the-server]__e72b30ae._.js:1:8143)
      at <unknown> (.next/server/chunks/[root-of-the-server]__e72b30ae._.js:1:21935)
      at e.safeParse (.next/server/chunks/[root-of-the-server]__e72b30ae._.js:20:8168)
      at h (.next/server/chunks/[root-of-the-server]__e72b30ae._.js:1859:308008)
      at async E (.next/server/chunks/[root-of-the-server]__4217576a._.js:11:35752)
      at async u (.next/server/chunks/[root-of-the-server]__68667959._.js:1:1731)
      at async u (.next/server/chunks/[root-of-the-server]__68667959._.js:1:4926)
}

到这里就可以看出,是上游的 payload.referrer 有问题,是 null。没检查 referrer 是否为空,就直接用了它。毕竟浏览器等不一定会发送 referrer,(例如 QQ 邮箱就不会发送 referrer)。

修改了 src\app\(collect)\(p/q)\[slug]\route.ts 的代码,应该 Bug 修复了吧?

喜欢的话,留下你的评论吧~

© 2024 - 2026 kissablecho
Powered by theme astro-koharu · Inspired by Shoka