前端进阶之旅前端进阶之旅
  • 基础篇HTML/CSS/JS 打底
  • 进阶篇原理与工程化
  • 高频篇面试最常问的那批
  • 精选篇按模块收敛的总结
  • 手写篇常考代码手写实现
  • 面经篇真实面试问题复盘
  • AI 篇NEWAI 时代的前端考点
  • 历年面经NEW按年份追踪真实考点
  • 每日一题每天一道,攒手感
  • 专项自测100 题快速查漏
  • 小程序题库小程序专项刷题
  • 算法题库NEW在线编码即时判题
  • 知识卡片NEW碎片时间过考点
  • 面试题大全常见问题解析
  • AI 答疑NEW随时提问,即时解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • AI 定制路线NEW按你的简历现排
  • AI 知识地图NEW串起全站知识点
  • 原理篇React / Vue 源码拆解
  • HTTP从报文一路讲到 HTTPS
  • 浏览器渲染、事件循环、进程
  • 计算机基础Linux、网络、操作系统
  • 设计模式23 种模式怎么用
  • Node学习指南从环境搭建到服务端
  • NPM工作流script、依赖与发布
  • Docker容器化部署上手
  • Canvas图形与动画实战
  • 前端系统进阶学习大型项目工程化
  • 前端综合文章长期沉淀的实践文
  • 思维导图知识点全景图
  • 学习路线按图索骥不跑偏
  • AI 热点NEWAI 每日动态
  • 公众号动态公众号历史文章
  • 博客动态站长的技术博客
  • 开发者导航常用工具与文档站
  • 基础篇HTML/CSS/JS 打底
  • 进阶篇原理与工程化
  • 高频篇面试最常问的那批
  • 精选篇按模块收敛的总结
  • 手写篇常考代码手写实现
  • 面经篇真实面试问题复盘
  • AI 篇NEWAI 时代的前端考点
  • 历年面经NEW按年份追踪真实考点
  • 每日一题每天一道,攒手感
  • 专项自测100 题快速查漏
  • 小程序题库小程序专项刷题
  • 算法题库NEW在线编码即时判题
  • 知识卡片NEW碎片时间过考点
  • 面试题大全常见问题解析
  • AI 答疑NEW随时提问,即时解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • AI 定制路线NEW按你的简历现排
  • AI 知识地图NEW串起全站知识点
  • 原理篇React / Vue 源码拆解
  • HTTP从报文一路讲到 HTTPS
  • 浏览器渲染、事件循环、进程
  • 计算机基础Linux、网络、操作系统
  • 设计模式23 种模式怎么用
  • Node学习指南从环境搭建到服务端
  • NPM工作流script、依赖与发布
  • Docker容器化部署上手
  • Canvas图形与动画实战
  • 前端系统进阶学习大型项目工程化
  • 前端综合文章长期沉淀的实践文
  • 思维导图知识点全景图
  • 学习路线按图索骥不跑偏
  • AI 热点NEWAI 每日动态
  • 公众号动态公众号历史文章
  • 博客动态站长的技术博客
  • 开发者导航常用工具与文档站
首页程序员面试题库API 设计面试题第 2 页
面试知识索引 · 分类、标签与搜索

API 设计面试题,90 道完整答案

API 设计面试题第 2 页,显示第 51–90 题,共找到 90 道完整解析,可继续按分类、标签与关键词缩小范围。

90筛选结果
52技术分类
178检索标签
2索引分页
按分类建立知识面,再用标签和搜索定位问题

每页只渲染 50 道题。分类与标签分页可抓取,自由搜索结果不会制造无限 SEO 页面。

快速定位

分类、标签与关键词搜索

清除全部筛选
题库检索
技术分类52 个
全部分类5000API 设计90AI Agent511浏览器301JavaScript285React281AI 开发262CSS240Node.js217TypeScript206Vue180前端工程化138
查看全部 52 个分类
React Native135操作系统135数据库134Docker95计算机网络94Kubernetes90HTML89Redis89全栈开发88分布式系统88系统设计86HTTP85Next.js60Angular58Linux53Nuxt51PostgreSQL46可观测性46设计模式46小程序45身份与权限45无障碍44MongoDB43PWA43Web 安全43Git42前端测试42前端性能41WebAssembly40测试40AI 工程37SvelteKit37Go35前端数据管理30React Router29AI 全栈28Svelte27算法12Java10数据结构5前端手写题3
API 设计 标签17 个
GraphQL49REST 与接口契约41HTTP13缓存13安全8异步编程3并发编程2性能优化2SQL1Web 可访问性1事件循环1可观测性1实时通信1数据库事务1流处理1
查看其余 2 个标签
表单1路由1
当前页02 / 2

正在显示第 51–90 题

API 设计40
第 2 页

本页面试问题

按稳定语义路径排序

  1. 0051
    API 设计REST 与接口契约

    创建资源成功后返回 201 时响应体和 Location 头应该怎么设计?

    围绕“创建资源成功后返回 201 时响应体和 Location 头应该怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 Location 指向新资源 URI 及是否回传完整资源的取舍。

    核心关键词201 Created Location 头 创建响应
    #REST 与接口契约
  2. 0052
    API 设计REST 与接口契约

    耗时操作无法同步完成时,202 Accepted 加状态轮询的接口怎么设计?

    围绕“耗时操作无法同步完成时,202 Accepted 加状态轮询的接口怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出任务资源建模与完成转向 303 或结果 URI 的方案。

    核心关键词202 Accepted 异步任务 轮询 状态端点
    #REST 与接口契约#异步编程
  3. 0053
    API 设计REST 与接口契约

    参数校验失败应该返回 400 还是 422,错误信息里该不该暴露字段级细节?

    围绕“参数校验失败应该返回 400 还是 422,错误信息里该不该暴露字段级细节”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分语法错误与语义校验失败并给出字段级错误的边界。

    核心关键词400 422 校验失败 错误响应
    #REST 与接口契约
  4. 0054
    API 设计REST 与接口契约

    401、403、404 在鉴权场景中怎么区分,为什么有时故意对无权限资源返回 404?

    围绕“401、403、404 在鉴权场景中怎么区分,为什么有时故意对无权限资源返回 404”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讲清未认证、无权限、隐藏资源存在性三种语义。

    核心关键词401 403 404 区别 鉴权 信息泄漏
    #REST 与接口契约#安全
  5. 0055
    API 设计REST 与接口契约

    资源被永久删除后返回 404 还是 410,语义和实际用途差在哪?

    围绕“资源被永久删除后返回 404 还是 410,语义和实际用途差在哪”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 410 表达主动永久移除及对爬虫与缓存的意义。

    核心关键词410 Gone 404 永久删除 语义
    #REST 与接口契约#缓存
  6. 0056
    API 设计REST 与接口契约

    哪些场景该用 409 Conflict,它与 412、422 的边界是什么?

    围绕“哪些场景该用 409 Conflict,它与 412、422 的边界是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须列举唯一约束、状态机冲突等场景并区分前提条件失败。

    核心关键词409 Conflict 资源冲突 并发 唯一约束
    #REST 与接口契约#并发编程
  7. 0057
    API 设计REST 与接口契约

    限流时返回 429 与 Retry-After 的正确用法是什么,客户端重试该遵守什么规则?

    围绕“限流时返回 429 与 Retry-After 的正确用法是什么,客户端重试该遵守什么规则”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明响应头取值形式与客户端退避配合。

    核心关键词429 Too Many Requests Retry-After 限流
    #REST 与接口契约#HTTP
  8. 0058
    API 设计REST 与接口契约

    当操作无法映射为资源 CRUD 时(如重置密码、发布文章),REST 接口该怎么设计?

    围绕“当操作无法映射为资源 CRUD 时(如重置密码、发布文章),REST 接口该怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出动作资源化或受控动词端点两种方案及取舍。

    核心关键词REST 非 CRUD 操作 动作端点 设计
    #REST 与接口契约
  9. 0059
    API 设计REST 与接口契约

    REST API 哪些变更属于向后兼容、哪些必须升主版本?

    围绕“REST API 哪些变更属于向后兼容、哪些必须升主版本”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须能分类枚举新增字段、删除字段、改类型、改默认值等情形的兼容性。

    核心关键词API 向后兼容 破坏性变更 判断
    #REST 与接口契约
  10. 0060
    API 设计REST 与接口契约

    批量创建接口该保证全成功或全回滚,还是允许部分成功,决策依据是什么?

    围绕“批量创建接口该保证全成功或全回滚,还是允许部分成功,决策依据是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答要按业务一致性与客户端补偿成本给出取舍标准。

    核心关键词批量操作 原子性 事务 部分提交
    #REST 与接口契约#数据库事务
  11. 0061
    API 设计REST 与接口契约

    批量操作接口部分成功部分失败时,状态码和响应体该怎么设计?

    围绕“批量操作接口部分成功部分失败时,状态码和响应体该怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出整体 200/207 与逐项结果的方案及语义权衡。

    核心关键词批量接口 部分成功 207 响应设计
    #REST 与接口契约#HTTP
  12. 0062
    API 设计REST 与接口契约

    批量提交中客户端重试时,如何保证已成功的子项不被重复执行?

    围绕“批量提交中客户端重试时,如何保证已成功的子项不被重复执行”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明子项级幂等键或客户端请求 ID 的去重设计。

    核心关键词批量 幂等 子项去重 重试
    #REST 与接口契约
  13. 0063
    API 设计REST 与接口契约

    批量接口该限制单批数量吗,大批量请求的超时和内存问题怎么控制?

    围绕“批量接口该限制单批数量吗,大批量请求的超时和内存问题怎么控制”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出上限设定、异步化与分片策略。

    核心关键词批量接口 大小限制 超时 分片
    #REST 与接口契约#异步编程
  14. 0064
    API 设计REST 与接口契约

    REST GET 响应如何利用 Cache-Control 与 ETag 降低服务端压力,写操作后缓存怎么失效?

    围绕“REST GET 响应如何利用 Cache-Control 与 ETag 降低服务端压力,写操作后缓存怎么失效”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖完整回答要覆盖可缓存性判定与失效联动。

    核心关键词HTTP 缓存 Cache-Control ETag REST
    #REST 与接口契约#缓存#HTTP
  15. 0065
    API 设计REST 与接口契约

    当过滤条件复杂到查询参数无法表达时,用 POST /search 创建查询资源是否违背 REST?

    围绕“当过滤条件复杂到查询参数无法表达时,用 POST /search 创建查询资源是否违背 REST”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须权衡 URL 长度、缓存能力与语义纯度给出方案。

    核心关键词复杂查询 POST search 端点 REST
    #REST 与接口契约#缓存
  16. 0066
    API 设计REST 与接口契约

    HTTP 内容协商中 Accept 与 Content-Type 各管什么,版本信息放进媒体类型有什么利弊?

    围绕“HTTP 内容协商中 Accept 与 Content-Type 各管什么,版本信息放进媒体类型有什么利弊”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分请求协商与实体描述两个方向。

    核心关键词HTTP 内容协商 Accept 与 Content-Type 媒体类型版本
    #REST 与接口契约#HTTP
  17. 0067
    API 设计REST 与接口契约

    游标分页(cursor-based)怎么设计,为什么适合无限滚动和实时数据流?

    围绕“游标分页(cursor-based)怎么设计,为什么适合无限滚动和实时数据流”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明游标编码、排序键稳定性与不支持跳页的代价。

    核心关键词游标分页 cursor pagination 设计
    #REST 与接口契约#流处理
  18. 0068
    API 设计REST 与接口契约

    REST 错误响应体应该包含哪些字段,为什么推荐 RFC 9457 problem+json 格式?

    围绕“REST 错误响应体应该包含哪些字段,为什么推荐 RFC 9457 problem+json 格式”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 type/title/status/detail/instance 字段职责。

    核心关键词错误响应格式 problem details RFC 9457
    #REST 与接口契约
  19. 0069
    API 设计REST 与接口契约

    ETag 和 Last-Modified 做条件请求时各有什么局限,什么时候必须选 ETag?

    围绕“ETag 和 Last-Modified 做条件请求时各有什么局限,什么时候必须选 ETag”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须指出秒级精度与弱校验的局限。

    核心关键词ETag Last-Modified 区别 条件请求
    #REST 与接口契约#缓存
  20. 0070
    API 设计REST 与接口契约

    客户端只想拿资源的部分字段时,fields 稀疏字段集参数该怎么设计?

    围绕“客户端只想拿资源的部分字段时,fields 稀疏字段集参数该怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明字段白名单、嵌套字段表达与默认字段策略。

    核心关键词稀疏字段集 fields 参数 部分响应
    #REST 与接口契约
  21. 0071
    API 设计REST 与接口契约

    直接把过滤参数拼进查询语句的列表接口有什么注入风险,如何防御?

    围绕“直接把过滤参数拼进查询语句的列表接口有什么注入风险,如何防御”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明白名单字段与参数化查询的防御边界。

    核心关键词过滤参数 注入 SQL 注入 参数校验
    #REST 与接口契约#安全#SQL
  22. 0072
    API 设计REST 与接口契约

    REST 列表接口的过滤条件如何用查询参数建模,多值过滤与范围过滤怎么表达?

    围绕“REST 列表接口的过滤条件如何用查询参数建模,多值过滤与范围过滤怎么表达”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出多值、区间、布尔条件的参数约定方案。

    核心关键词REST 过滤 查询参数 多值 范围查询
    #REST 与接口契约
  23. 0073
    API 设计REST 与接口契约

    REST 接口中 GET、POST、PUT、PATCH、DELETE 分别对应什么操作,语义边界在哪里?

    围绕“REST 接口中 GET、POST、PUT、PATCH、DELETE 分别对应什么操作,语义边界在哪里”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讲清每个方法的语义与典型误用场景。

    核心关键词HTTP 方法 CRUD 映射 REST 语义
    #REST 与接口契约#HTTP
  24. 0074
    API 设计REST 与接口契约

    支付类 POST 接口如何用 Idempotency-Key 防止客户端重试造成重复扣款?

    围绕“支付类 POST 接口如何用 Idempotency-Key 防止客户端重试造成重复扣款”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讲清键的生成、存储、命中处理与过期策略。

    核心关键词幂等键 Idempotency-Key 重复请求 支付接口
    #REST 与接口契约
  25. 0075
    API 设计REST 与接口契约

    HTTP 哪些方法是幂等的,为什么说 POST 不幂等而 PUT 幂等?

    围绕“HTTP 哪些方法是幂等的,为什么说 POST 不幂等而 PUT 幂等”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须用重复请求产生相同服务端效果的定义逐个判断方法。

    核心关键词HTTP 幂等性 GET PUT DELETE POST
    #REST 与接口契约#HTTP
  26. 0076
    API 设计REST 与接口契约

    幂等键应该保存多久,请求未完成时相同键并发到达该怎么处理?

    围绕“幂等键应该保存多久,请求未完成时相同键并发到达该怎么处理”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖完整回答要覆盖键生命周期与 in-flight 请求的串行化策略。

    核心关键词幂等键 过期时间 并发 处理中状态
    #REST 与接口契约#并发编程
  27. 0077
    API 设计REST 与接口契约

    客户端删除请求超时后重试,服务端返回 404 时重试逻辑该怎么处理?

    围绕“客户端删除请求超时后重试,服务端返回 404 时重试逻辑该怎么处理”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须把 404 视为已删除的成功等价结果的判断讲清。

    核心关键词DELETE 重试 404 幂等 超时处理
    #REST 与接口契约
  28. 0078
    API 设计REST 与接口契约

    键集分页(keyset pagination)与 offset 分页在查询性能和一致性上有什么差别?

    围绕“键集分页(keyset pagination)与 offset 分页在查询性能和一致性上有什么差别”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须用 WHERE 排序键定位与 OFFSET 扫描的成本差异说明。

    核心关键词keyset 分页 seek 分页 offset 对比
    #REST 与接口契约#性能优化
  29. 0079
    API 设计REST 与接口契约

    REST 中 /users/123/orders 这类嵌套资源路径该嵌套几层,何时应改用顶层资源加查询参数?

    围绕“REST 中 /users/123/orders 这类嵌套资源路径该嵌套几层,何时应改用顶层资源加查询参数”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出嵌套表达归属关系的适用边界与扁平化判断标准。

    核心关键词REST 嵌套资源 路径层级 设计
    #REST 与接口契约
  30. 0080
    API 设计REST 与接口契约

    基于 offset/limit 的分页在数据量大或频繁写入时会出什么问题?

    围绕“基于 offset/limit 的分页在数据量大或频繁写入时会出什么问题”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讲清深分页成本与翻页期间数据增删导致的重复或遗漏。

    核心关键词offset 分页 深分页 性能问题 数据漂移
    #REST 与接口契约#性能优化
  31. 0081
    API 设计REST 与接口契约

    分页请求超出最后一页时应该返回空数组还是 404?

    围绕“分页请求超出最后一页时应该返回空数组还是 404”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须基于集合资源是否存在的语义给出判断。

    核心关键词分页 越界 空页 404 还是空数组
    #REST 与接口契约
  32. 0082
    API 设计REST 与接口契约

    分页接口的响应体应该包含哪些元信息,Link 头分页有什么优势?

    围绕“分页接口的响应体应该包含哪些元信息,Link 头分页有什么优势”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须权衡 total、next 游标、Link 头等字段的成本与用途。

    核心关键词分页 响应元数据 Link 头 total count
    #REST 与接口契约
  33. 0083
    API 设计REST 与接口契约

    创建资源时用 POST /collection 还是 PUT /collection/id,决定因素是什么?

    围绕“创建资源时用 POST /collection 还是 PUT /collection/id,决定因素是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须以谁决定资源 URI 与幂等性为依据。

    核心关键词POST PUT 创建资源 区别 客户端指定 ID
    #REST 与接口契约
  34. 0084
    API 设计REST 与接口契约

    REST API 设计中为什么推荐用名词而不是动词命名资源路径,删除用户这类操作该怎么设计?

    围绕“REST API 设计中为什么推荐用名词而不是动词命名资源路径,删除用户这类操作该怎么设计”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明资源与操作的分离及用 HTTP 方法表达动作。

    核心关键词REST 资源命名 名词 动词 URI 设计
    #REST 与接口契约#HTTP
  35. 0085
    API 设计REST 与接口契约

    HTTP 安全方法是什么,GET 被缓存和预取带来什么设计约束?

    围绕“HTTP 安全方法是什么,GET 被缓存和预取带来什么设计约束”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明安全方法不应改变资源状态及违反后的实际风险。

    核心关键词HTTP 安全方法 GET 无副作用 缓存预取约束
    #REST 与接口契约#缓存#HTTP
  36. 0086
    API 设计REST 与接口契约

    REST 中单个资源与集合资源的路径和状态码使用上有什么区别?

    围绕“REST 中单个资源与集合资源的路径和状态码使用上有什么区别”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分集合与成员 URI 的语义及各自增删改查的响应约定。

    核心关键词REST 集合资源 单资源 URI 状态码
    #REST 与接口契约#HTTP
  37. 0087
    API 设计REST 与接口契约

    REST 列表接口多字段排序参数怎么设计,升降序和默认排序如何约定?

    围绕“REST 列表接口多字段排序参数怎么设计,升降序和默认排序如何约定”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出参数语法与稳定性要求(排序键加唯一键兜底)。

    核心关键词REST 排序参数 sort 多字段 升降序
    #REST 与接口契约
  38. 0088
    API 设计REST 与接口契约

    REST 资源标识用自增 ID 还是 UUID,对外暴露时各有什么问题?

    围绕“REST 资源标识用自增 ID 还是 UUID,对外暴露时各有什么问题”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较可枚举性、泄漏业务量、分布式生成等维度。

    核心关键词资源 ID UUID 自增 ID REST 设计
    #REST 与接口契约
  39. 0089
    API 设计REST 与接口契约

    废弃旧版本 API 时如何用 Sunset 和 Deprecation 响应头通知客户端?

    围绕“废弃旧版本 API 时如何用 Sunset 和 Deprecation 响应头通知客户端”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明这两个头的语义与配套迁移流程。

    核心关键词API 废弃 Sunset Deprecation 响应头
    #REST 与接口契约#HTTP
  40. 0090
    API 设计REST 与接口契约

    REST API 版本放在 URL 路径、查询参数还是请求头,各自对缓存和演进有什么影响?

    围绕“REST API 版本放在 URL 路径、查询参数还是请求头,各自对缓存和演进有什么影响”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较多路由方案的可缓存性、可见性与演进成本。

    核心关键词API 版本控制 URL 版本 Header 版本
    #REST 与接口契约#路由#缓存
上一页
12
下一页
前端进阶之旅本地 Markdown 维护 · 服务端分页 · 完整内容对用户与搜索引擎一致