Node.js 服务端用 fs.createReadStream 经 pipeline 写 HTTP 响应时,客户端中途断开会触发哪些事件?
围绕“Node.js 服务端用 fs.createReadStream 经 pipeline 写 HTTP 响应时,客户端”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖要说明响应流 error/close 与 request aborted/close 的传播,需停止读文件并不再写头。
HTTP专题面试题第 3 页,显示第 101–141 题,共找到 141 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
围绕“Node.js 服务端用 fs.createReadStream 经 pipeline 写 HTTP 响应时,客户端”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖要说明响应流 error/close 与 request aborted/close 的传播,需停止读文件并不再写头。
围绕“Node.js 接收 HTTP 上传流时如何用背压限制落盘速度,超限请求应在哪一层截断”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖要回答 req 是 Readable,写文件 false/drain 控制节奏,字节超限应 destroy 输入并清理临时文件。
比较 pipe 的连接与背压能力和 pipeline 的整链完成、错误及销毁管理,用对象转换示例验证成功与中途失败,并说明 HTTP 响应销毁后无法补写错误页及流外资源的清理责任。
围绕“Node.js stream/promises 的 pipeline 与 finished 相比事件回调写法解决了哪”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖要回答 Promise 化便于 await 完成或失败并统一清理,但仍不替代业务状态码处理。
围绕“Nitro 如何实现基于 HTTP 头部和路径的缓存策略?如何配置一个特定接口返回 1 小时内不重新请求的响应”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明如何通过 Nitro 配置文件中的 `runtimeConfig` 与 `cache` 设置控制缓存行为。
围绕“当 Nitro 代理外部 API 时,如何处理 CORS 问题?是否需要在服务端手动添加 `Access-Contr”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 Nitro 代理自动转发原响应头,若需修改需在 `nitro.server` 中配置中间件。
围绕“在部署时,Nitro 如何处理来自反向代理的 HTTPS 请求?是否需要在 Nitro 内部启用 TLS”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 TLS 由反向代理处理,Nitro 不需开启内置证书。
围绕“OpenTelemetry HTTP semantic conventions 固定 http.request.me”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明命名稳定利于跨语言查询。
围绕“为 HTTP API 定义可用性 SLI 时,5xx、超时和业务失败应如何计入分子分母”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分传输失败、超时与领域失败。
围绕“Cache Storage API 和浏览器 HTTP 缓存有什么区别,为什么 PWA 离线要显式使用 Cache ”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要对比程序化控制与浏览器启发式缓存的可控性。
围绕“为什么 Service Worker 只能在 HTTPS 下注册,localhost 为什么例外”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖解释安全上下文要求与本地开发例外。
围绕“navigator.serviceWorker.register 的 scope 参数和 Service-Worke”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖区分脚本路径、scope 参数与响应头三者的优先级关系。
围绕“为什么建议对 Service Worker 脚本本身设置很短的 HTTP 缓存或使用 no-cache”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖解释脚本被长缓存导致更新延迟的机制,不讲 SW 内部资源缓存。
围绕“部署了新代码但用户仍看到旧页面,从 Service Worker 角度列出最可能的原因清单”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕系统性列举缓存名未变、waiting 未激活、HTTP 缓存脚本等原因,不深入单点。
解释 SSR 和预渲染如何让正文、链接和页面元信息更早进入 HTML,纠正 CSR 一定不能收录的说法,并给出状态码、canonical、sitemap 和分享卡片的分层验收方法。
围绕“限流时返回 429 与 Retry-After 的正确用法是什么,客户端重试该遵守什么规则”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明响应头取值形式与客户端退避配合。
围绕“批量操作接口部分成功部分失败时,状态码和响应体该怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出整体 200/207 与逐项结果的方案及语义权衡。
围绕“REST GET 响应如何利用 Cache-Control 与 ETag 降低服务端压力,写操作后缓存怎么失效”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖完整回答要覆盖可缓存性判定与失效联动。
围绕“HTTP 内容协商中 Accept 与 Content-Type 各管什么,版本信息放进媒体类型有什么利弊”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分请求协商与实体描述两个方向。
围绕“REST 接口中 GET、POST、PUT、PATCH、DELETE 分别对应什么操作,语义边界在哪里”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讲清每个方法的语义与典型误用场景。
围绕“HTTP 哪些方法是幂等的,为什么说 POST 不幂等而 PUT 幂等”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须用重复请求产生相同服务端效果的定义逐个判断方法。
围绕“REST API 设计中为什么推荐用名词而不是动词命名资源路径,删除用户这类操作该怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明资源与操作的分离及用 HTTP 方法表达动作。
围绕“HTTP 安全方法是什么,GET 被缓存和预取带来什么设计约束”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明安全方法不应改变资源状态及违反后的实际风险。
围绕“REST 中单个资源与集合资源的路径和状态码使用上有什么区别”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分集合与成员 URI 的语义及各自增删改查的响应约定。
围绕“废弃旧版本 API 时如何用 Sunset 和 Deprecation 响应头通知客户端”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明这两个头的语义与配套迁移流程。
围绕“REST API 版本放在 URL 路径、查询参数还是请求头,各自对缓存和演进有什么影响”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较多路由方案的可缓存性、可见性与演进成本。
围绕“React Native iOS 发布到 App Store 前,加密合规 ITSAppUsesNonExemptE”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖判断时要说明 HTTPS 之外的自研加密与豁免边界。
围绕“当 SvelteKit 表单的 action 被调用时,如何通过 HTTP 方法覆盖来区分创建与更新操作”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明通过 method 属性显式指定 POST/PUT 等方法实现语义区分。
围绕“SvelteKit hooks.server.js 可以如何在响应头中添加自定义字段以供客户端识别”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明通过 response.headers.set() 添加字段。
围绕“SvelteKit 的 hooks.server.js 中如何基于请求头设置用户会话状态并注入到 context”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明如何在 handle 函数中解析 header 并挂载到 event.locals。
围绕“SvelteKit load 函数中如何设置响应头以控制客户端缓存策略”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明在返回对象中设置 headers.Cache-Control。
围绕“被限流拒绝的请求应该如何响应,429 状态码和排队等待各适合什么场景”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确快速失败、延迟排队、返回剩余重试时间三种策略的适用边界。
围绕“短链接跳转该选 301 还是 302,统计点击与浏览器缓存会怎样受影响”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确状态码对浏览器缓存、SEO 权重与埋点完整性的影响。
围绕“用 Playwright 网络拦截模拟接口 500 与超时两种失败时实现方式有何不同”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确 500 用 fulfill 状态码、超时用 abort 或延迟结合客户端超时配置的区别。
围绕“会话 Cookie 的 Secure、HttpOnly、SameSite 三个属性分别针对什么攻击场景”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须将三个属性分别对应中间人窃听、脚本窃取、跨站发送三类威胁。
围绕“Access-Control-Allow-Origin 等 CORS 响应头如何配置,通配符与凭证为什么不能共存”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明带 Cookie 请求时通配符被浏览器拒绝的规则及正确写法。
围绕“前端跨域请求携带 Cookie 需要在 fetch/XHR 和浏览器两端各满足什么条件”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须同时回答客户端 credentials 设置与服务端响应头两个必要条件。
围绕“纯 JSON API 要求自定义请求头,为什么这能在一定程度上天然抵御 CSRF”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要解释简单请求与预检请求的分界及自定义头触发 CORS 预检的机制。
围绕“什么是混合内容问题,HSTS 如何防止 HTTPS 站点被降级回 HTTP”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须分别回答被动/主动混合内容的阻断行为与 HSTS 的预加载机制及首次访问的空窗期。
围绕“HttpOnly Cookie 能不能防 XSS,它实际缓解的是什么后果”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分「防攻击发生」与「限制攻击收益」,说明 HttpOnly 只阻止脚本读取 Cookie。
围绕“体积较大的 .wasm 文件如何配合缓存与流式编译优化二次加载”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 HTTP 缓存头与 streaming 的组合效果及不能用 IndexedDB 存 Module 的替代。