用途:这是面向 Hono 4.8.0 至 4.12.x 的知识补丁,基线为 v4.7.x,用于在实现或审查 Hono 代码前了解该区间的行为变更、弃用项与安全修复。
主要能力与要点: 安全与认证:自 4.11.4 起 JWT/JWK 必须显式配置算法,jwt 用单个 alg,jwk 用非对称算法数组;建议 4.11 线使用 v4.11.7 以上、更强时序安全比较用 v4.11.10 以上,4.12 至少 v4.12.27。JWT/JWK 仅接受 Bearer 方案,支持 headerName、cookie、jwks_uri 及 allow_anon。Basic Auth 提供 onAuthSuccess 钩子。 路由与请求:HEAD 请求在匹配前转为 GET 并移除响应体,app.head() 与 app.on('HEAD', ...) 不执行;代理处理按 RFC 9110 处理逐跳头;校验器在缺少匹配 Content-Type 时 body 为 {},header 键为小写。 客户端与 RPC:hc 支持字面量 base URL 类型参数使 $url() 返回精确 TypedURL,$path() 获取路径或缓存键,buildSearchParams 自定义查询;hc 不对路径参数做 URL 编码。parseResponse() 按 Content-Type 选择解析器并对非 OK 抛 DetailedError;cloneRawRequest 用于原始请求已被消费的场景。ApplyGlobalResponse、PickResponseByStatusCode 用于响应类型。 中间件与运行时:cache 支持 cacheableStatusCodes、onCacheNotAvailable,Vary 参与缓存键,Vary: Authorization/Cookie 及 private/no-store 不缓存;cors 的 allowMethods 可为函数;压缩支持 contentTypeFilter。适配器导出需从对应运行时导入,如 Bun 的 upgradeWebSocket、websocket,AWS Lambda/Cloudflare Pages/Netlify 的 getConnInfo。 渲染与 SSG:streamSSE 需检查 stream.aborted 以停止长连接,流开始后的生产者错误不进入 onError;SSG 通过 toSSG(..., { plugins }) 传入插件,redirectPlugin() 放在 defaultPlugin() 之前;流式 JSX 需为 StreamingContext 配置 scriptNonce 并在 CSP 中允许。 CLI:安装 @hono/cli 后可用 hono search、hono docs、hono request、hono serve、hono optimize 等命令。
限制:资料未提供收费、价格、平台支持范围等细节;具体 API 行为以对应版本文档为准。