[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"public:announcements":3,"public:navigations:zh":4,"footer:categories:zh":56,"tag:detail:nodejs:zh":177,"tag:posts:nodejs:zh:1":183},[],[5,18,25,33,41,49],{"id":6,"title":7,"url":12,"icon":13,"parent_id":13,"location":14,"order":6,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},1,{"zh":8,"en":9,"ja":10,"zh_TW":11},"首页","Home","ホーム","首頁","\u002F",null,"header",true,false,"2026-09-30T18:09:54.251095Z",{"id":19,"title":20,"url":24,"icon":13,"parent_id":13,"location":14,"order":19,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},2,{"zh":21,"en":22,"ja":23,"zh_TW":21},"文章","Posts","記事","\u002Fposts",{"id":26,"title":27,"url":32,"icon":13,"parent_id":13,"location":14,"order":26,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},3,{"zh":28,"en":29,"ja":30,"zh_TW":31},"分类","Categories","カテゴリー","分類","\u002Fcategories",{"id":34,"title":35,"url":40,"icon":13,"parent_id":13,"location":14,"order":34,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},4,{"zh":36,"en":37,"ja":38,"zh_TW":39},"标签","Tags","タグ","標籤","\u002Ftags",{"id":42,"title":43,"url":48,"icon":13,"parent_id":13,"location":14,"order":42,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},5,{"zh":44,"en":45,"ja":46,"zh_TW":47},"关于","About","概要","關於","\u002Fpage\u002Fabout",{"id":50,"title":51,"url":55,"icon":13,"parent_id":13,"location":14,"order":50,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},6,{"zh":52,"en":53,"ja":54,"zh_TW":52},"留言板","Guestbook","ゲストブック","\u002Fpage\u002Fguestbook",[57,73,87,102,117,133,148,162],{"id":6,"name":58,"slug":63,"description":64,"icon":69,"color":70,"cover_image":13,"created_at":71,"post_count":72},{"en":59,"ja":60,"zh":61,"zh_Hant":62},"Technology","テクノロジー","技术","技術","technology",{"en":65,"ja":66,"zh":67,"zh_Hant":68},"Cutting-edge technology exploration and in-depth analysis covering programming languages, frameworks, and architecture design","プログラミング言語、フレームワーク、アーキテクチャ設計を含む先端技術の探究","前沿技术探索与深度分析，涵盖编程语言、框架、架构设计等核心领域","前沿技術探索與深度分析，涵蓋編程語言、框架、架構設計等核心領域","heroicons:cog-6-tooth","#6366f1","2026-09-30T18:09:53.633610Z",8,{"id":19,"name":74,"slug":78,"description":79,"icon":84,"color":85,"cover_image":13,"created_at":86,"post_count":50},{"en":75,"ja":76,"zh":77,"zh_Hant":77},"Tutorial","チュートリアル","教程","tutorial",{"en":80,"ja":81,"zh":82,"zh_Hant":83},"Hands-on tutorials from scratch with clear steps and complete code for developers at all levels","ゼロから始める実践的なチュートリアル。明確な手順と完全なコードで、全てのレベルの開発者に最適","从零开始的实战教程，步骤清晰，代码完整，适合各阶段开发者学习","從零開始的實戰教程，步驟清晰，代碼完整，適合各階段開發者學習","heroicons:academic-cap","#10b981","2026-09-30T18:09:53.641581Z",{"id":26,"name":88,"slug":92,"description":93,"icon":98,"color":99,"cover_image":13,"created_at":100,"post_count":101},{"en":89,"ja":90,"zh":91,"zh_Hant":91},"Frontend","フロントエンド","前端","frontend",{"en":94,"ja":95,"zh":96,"zh_Hant":97},"Full coverage of web frontend development including Vue, React, new CSS features, and performance optimization","Vue、React、CSSの新機能やパフォーマンス最適化を含むWebフロントエンド開発の全領域","Web前端开发全栈覆盖，包括Vue、React、CSS新特性及性能优化等话题","Web前端開發全棧覆蓋，包括Vue、React、CSS新特性及性能優化等話題","heroicons:computer-desktop","#ec4899","2026-09-30T18:09:53.644838Z",7,{"id":34,"name":103,"slug":108,"description":109,"icon":114,"color":115,"cover_image":13,"created_at":116,"post_count":26},{"en":104,"ja":105,"zh":106,"zh_Hant":107},"Backend","バックエンド","后端","後端","backend",{"en":110,"ja":111,"zh":112,"zh_Hant":113},"Server-side development best practices including API design, database optimization, and microservices architecture","API設計、データベース最適化、マイクロサービスアーキテクチャを含むサーバーサイド開発の実践","服务端开发实战经验，API设计、数据库优化、微服务架构等深度内容","服務端開發實戰經驗，API設計、數據庫優化、微服務架構等深度內容","heroicons:server-stack","#f59e0b","2026-09-30T18:09:53.647836Z",{"id":42,"name":118,"slug":123,"description":124,"icon":129,"color":130,"cover_image":13,"created_at":131,"post_count":132},{"en":119,"ja":120,"zh":121,"zh_Hant":122},"Fullstack","フルスタック","全栈","全棧","fullstack",{"en":125,"ja":126,"zh":127,"zh_Hant":128},"End-to-end development guides covering the full project lifecycle and technology stack selection","フロントエンドからバックエンドまでの開発プロセス全体をカバーするガイド","从前端到后端的全流程开发指南，覆盖完整项目生命周期与技术选型","從前端到後端的全流程開發指南，覆蓋完整項目生命週期與技術選型","heroicons:swatch","#8b5cf6","2026-09-30T18:09:53.650513Z",0,{"id":50,"name":134,"slug":139,"description":140,"icon":145,"color":146,"cover_image":13,"created_at":147,"post_count":34},{"en":135,"ja":136,"zh":137,"zh_Hant":138},"Essays","エッセイ","随笔","隨筆","essays",{"en":141,"ja":142,"zh":143,"zh_Hant":144},"Technical reflections and development insights recording the programmer's growth journey","プログラマーの成長の軌跡を記録する技術的考察と開発の洞察","技术思考与开发心得分享，记录程序员成长路上的点滴感悟","技術思考與開發心得分享，記錄程序員成長路上的點滴感悟","heroicons:pencil-square","#f43f5e","2026-09-30T18:09:53.653105Z",{"id":101,"name":149,"slug":153,"description":154,"icon":159,"color":160,"cover_image":13,"created_at":161,"post_count":34},{"en":150,"ja":151,"zh":152,"zh_Hant":152},"Tools","ツール","工具","tools",{"en":155,"ja":156,"zh":157,"zh_Hant":158},"Development toolchain and productivity tool recommendations to supercharge your development experience","開発効率を飛躍的に向上させるツールチェーンと生産性ツールの推奨","开发工具链与效率提升利器推荐，让你的开发体验如虎添翼","開發工具鏈與效率提升利器推薦，讓你的開發體驗如虎添翼","heroicons:wrench-screwdriver","#06b6d4","2026-09-30T18:09:53.655605Z",{"id":72,"name":163,"slug":168,"description":169,"icon":174,"color":175,"cover_image":13,"created_at":176,"post_count":132},{"en":164,"ja":165,"zh":166,"zh_Hant":167},"Translation","翻訳","翻译","翻譯","translation",{"en":170,"ja":171,"zh":172,"zh_Hant":173},"Curated translations of high-quality foreign technical articles to keep up with international trends","国際的な技術トレンドを追うための厳選された海外技術記事の翻訳","优质外文技术文章精选翻译，紧跟国际技术前沿动态","優質外文技術文章精選翻譯，緊跟國際技術前沿動態","heroicons:language","#84cc16","2026-09-30T18:09:53.658041Z",{"id":72,"name":178,"slug":180,"color":181,"icon":13,"is_active":15,"created_at":182,"post_count":50},{"en":179,"ja":179,"zh":179,"zh_Hant":179},"Node.js","nodejs","#339933","2026-09-30T18:09:53.685769Z",{"items":184,"total":50,"page":6,"page_size":202,"total_pages":6},[185,217,241,265,289,309],{"id":186,"title":187,"subtitle":13,"slug":188,"excerpt":189,"cover_image":13,"author":190,"category":193,"tags":194,"status":213,"views":214,"likes_count":132,"comments_count":42,"is_pinned":16,"created_at":215,"published_at":215,"updated_at":216,"reading_time":6},28,"CI\u002FCD Pipeline 设计：GitHub Actions + Cache + Matrix Build","post-28-CICDPipe","从零设计一套工业级 GitHub Actions 流水线：npm\u002Fpip 依赖缓存、多版本 Node\u002FPython Matrix 并行构建、Docker 镜像分层缓存、Lint+Test+Build+Publish 分阶段、条件执行、环境矩阵、失败重试和发布门禁最佳实践，附完整工作流代码。",{"id":6,"username":191,"nickname":191,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":192},"Choyeon","2026-09-30T18:09:53.330367Z",{"id":101,"name":152,"slug":153,"description":157,"icon":159,"color":160,"cover_image":13,"created_at":161,"post_count":132},[195,201,207,208],{"id":196,"name":197,"slug":198,"color":199,"icon":13,"is_active":15,"created_at":200,"post_count":132},12,"Git","git","#f05032","2026-09-30T18:09:53.697858Z",{"id":202,"name":203,"slug":204,"color":205,"icon":13,"is_active":15,"created_at":206,"post_count":132},9,"Docker","docker","#2496ed","2026-09-30T18:09:53.688173Z",{"id":72,"name":179,"slug":180,"color":181,"icon":13,"is_active":15,"created_at":182,"post_count":132},{"id":6,"name":209,"slug":210,"color":211,"icon":13,"is_active":15,"created_at":212,"post_count":132},"Python","python","#3776ab","2026-09-30T18:09:53.663835Z","published",193,"2026-09-25T18:09:53.733462Z","2026-10-01T10:33:25.639153Z",{"id":218,"title":219,"subtitle":13,"slug":220,"excerpt":221,"cover_image":13,"author":222,"category":223,"tags":224,"status":213,"views":238,"likes_count":132,"comments_count":26,"is_pinned":16,"created_at":239,"published_at":239,"updated_at":240,"reading_time":6},27,"测试金字塔：单元\u002F集成\u002FE2E 测试比例与落地","post-27-测试金字塔单元集","系统解析测试金字塔架构：从底层单元测试（大量快速、Mock 隔离依赖）、中层集成测试（服务\u002F数据库\u002F消息协作真实交互）、顶层 E2E 测试（真实用户路径少量精测）的推荐比例 70% \u002F 20% \u002F 10%，附项目覆盖率指标与落地实践。",{"id":6,"username":191,"nickname":191,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":192},{"id":6,"name":61,"slug":63,"description":67,"icon":69,"color":70,"cover_image":13,"created_at":71,"post_count":132},[225,226,227,232],{"id":72,"name":179,"slug":180,"color":181,"icon":13,"is_active":15,"created_at":182,"post_count":132},{"id":6,"name":209,"slug":210,"color":211,"icon":13,"is_active":15,"created_at":212,"post_count":132},{"id":50,"name":228,"slug":229,"color":230,"icon":13,"is_active":15,"created_at":231,"post_count":132},"TypeScript","typescript","#3178c6","2026-09-30T18:09:53.680697Z",{"id":233,"name":234,"slug":235,"color":236,"icon":13,"is_active":15,"created_at":237,"post_count":132},13,"算法","algorithms","#ef4444","2026-09-30T18:09:53.700921Z",418,"2026-09-23T16:09:53.733462Z","2026-10-01T10:32:41.719776Z",{"id":242,"title":243,"subtitle":13,"slug":244,"excerpt":245,"cover_image":13,"author":246,"category":247,"tags":248,"status":213,"views":262,"likes_count":132,"comments_count":26,"is_pinned":16,"created_at":263,"published_at":263,"updated_at":264,"reading_time":6},24,"Monorepo 工具链：Turborepo + pnpm workspace","post-24-Monorepo工","单仓多包（Monorepo）管理大型前端全栈项目的完全指南：用 pnpm workspace 做依赖统一安装和链接，Turborepo 做任务编排、增量构建和远程缓存，对比 Nx\u002FLerna，附带代码复用与版本发布最佳实践。",{"id":6,"username":191,"nickname":191,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":192},{"id":101,"name":152,"slug":153,"description":157,"icon":159,"color":160,"cover_image":13,"created_at":161,"post_count":132},[249,250,251,256],{"id":50,"name":228,"slug":229,"color":230,"icon":13,"is_active":15,"created_at":231,"post_count":132},{"id":72,"name":179,"slug":180,"color":181,"icon":13,"is_active":15,"created_at":182,"post_count":132},{"id":34,"name":252,"slug":253,"color":254,"icon":13,"is_active":15,"created_at":255,"post_count":132},"React","react","#61dafb","2026-09-30T18:09:53.675301Z",{"id":257,"name":258,"slug":259,"color":260,"icon":13,"is_active":15,"created_at":261,"post_count":132},20,"Next.js","nextjs","#000000","2026-09-30T18:09:53.721362Z",283,"2026-09-19T10:09:53.733462Z","2026-10-01T10:32:42.325847Z",{"id":266,"title":267,"subtitle":13,"slug":268,"excerpt":269,"cover_image":13,"author":270,"category":271,"tags":272,"status":213,"views":286,"likes_count":132,"comments_count":101,"is_pinned":16,"created_at":287,"published_at":287,"updated_at":288,"reading_time":6},23,"GraphQL vs REST：从 7 个维度深度对比","post-23-GraphQLvs","终结选型焦虑：从网络传输效率、前端开发体验、后端演进成本、缓存策略、类型安全、安全风险、生态工具链 7 大维度系统对比 GraphQL 与 REST，给出清晰决策树与混合架构模式。",{"id":6,"username":191,"nickname":191,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":192},{"id":50,"name":137,"slug":139,"description":143,"icon":145,"color":146,"cover_image":13,"created_at":147,"post_count":132},[273,278,279,280],{"id":19,"name":274,"slug":275,"color":276,"icon":13,"is_active":15,"created_at":277,"post_count":132},"FastAPI","fastapi","#009688","2026-09-30T18:09:53.669567Z",{"id":72,"name":179,"slug":180,"color":181,"icon":13,"is_active":15,"created_at":182,"post_count":132},{"id":50,"name":228,"slug":229,"color":230,"icon":13,"is_active":15,"created_at":231,"post_count":132},{"id":281,"name":282,"slug":283,"color":284,"icon":13,"is_active":15,"created_at":285,"post_count":132},15,"性能优化","performance","#f97316","2026-09-30T18:09:53.707190Z",235,"2026-09-18T16:09:53.733462Z","2026-10-01T13:34:45.954651Z",{"id":290,"title":291,"subtitle":13,"slug":292,"excerpt":293,"cover_image":13,"author":294,"category":295,"tags":296,"status":213,"views":306,"likes_count":132,"comments_count":42,"is_pinned":16,"created_at":307,"published_at":307,"updated_at":308,"reading_time":6},19,"JWT 认证安全最佳实践 + OAuth2 vs SAML","post-19-JWT认证安全最佳","系统性归纳 JWT 常见安全漏洞防护：算法混淆攻击（none\u002FRS256→HS256）、密钥爆破、KID注入、重放攻击防御，再从多个维度对比 OAuth2（授权码+PKCE）、OIDC、SAML 2.0 三种主流认证协议选型。",{"id":6,"username":191,"nickname":191,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":192},{"id":50,"name":137,"slug":139,"description":143,"icon":145,"color":146,"cover_image":13,"created_at":147,"post_count":132},[297,303,304,305],{"id":298,"name":299,"slug":300,"color":301,"icon":13,"is_active":15,"created_at":302,"post_count":132},16,"安全","security","#14b8a6","2026-09-30T18:09:53.709991Z",{"id":19,"name":274,"slug":275,"color":276,"icon":13,"is_active":15,"created_at":277,"post_count":132},{"id":72,"name":179,"slug":180,"color":181,"icon":13,"is_active":15,"created_at":182,"post_count":132},{"id":6,"name":209,"slug":210,"color":211,"icon":13,"is_active":15,"created_at":212,"post_count":132},135,"2026-09-11T20:09:53.733462Z","2026-10-01T04:54:47.655492Z",{"id":233,"title":310,"subtitle":13,"slug":311,"excerpt":312,"cover_image":13,"author":313,"category":314,"tags":315,"status":213,"views":328,"likes_count":132,"comments_count":101,"is_pinned":16,"created_at":329,"published_at":329,"updated_at":330,"reading_time":6},"Node.js 性能诊断：clinic.js + flamegraph","post-13-Nodejs性能","系统学习 Node.js 性能定位工具链：clinic.js 一键生成分析报告，解读火焰图热点函数、阻塞事件循环的同步代码、内存泄漏对象栈，精准定位 CPU\u002F内存瓶颈。",{"id":6,"username":191,"nickname":191,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":192},{"id":34,"name":106,"slug":108,"description":112,"icon":114,"color":115,"cover_image":13,"created_at":116,"post_count":132},[316,317,318,323],{"id":72,"name":179,"slug":180,"color":181,"icon":13,"is_active":15,"created_at":182,"post_count":132},{"id":281,"name":282,"slug":283,"color":284,"icon":13,"is_active":15,"created_at":285,"post_count":132},{"id":101,"name":319,"slug":320,"color":321,"icon":13,"is_active":15,"created_at":322,"post_count":132},"JavaScript","javascript","#f7df1e","2026-09-30T18:09:53.683194Z",{"id":242,"name":324,"slug":325,"color":326,"icon":13,"is_active":15,"created_at":327,"post_count":132},"Linux","linux","#fcc624","2026-09-30T18:09:53.731844Z",306,"2026-09-04T17:09:53.733462Z","2026-09-30T21:01:48.426436Z"]