You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RESTful API返回设计:嵌套对象与新增字段方案选型

结论优先:面向合作方的公共API场景下,更推荐选择方案(b),理由如下:

  • 语义清晰无歧义

    静态基础属性和查询动态属性拆分非常明确:建议把嵌套的key从product改成productType更贴合语义,嵌套对象内的字段是产品类型的固有属性,不随查询参数变化,合作方可以直接缓存复用;外层的quantityAvailable、priceForDates是和当前请求的日期范围强相关的动态结果,对接的开发人员不用思考就能快速区分两类字段的含义,不会出现把动态价格当成产品固定单价这类低级错误。
  • 接入成本更低

    合作方可以复用你们其他接口已经公开的ProductType结构的解析逻辑,不需要为这个接口单独写一套兼容额外字段的解析代码,后续你们如果给ProductType新增固有属性,或者给查询结果新增更多动态字段(比如适用优惠、可预约时段限制等),完全不会影响已有逻辑的兼容性。
  • 无字段冲突风险

    后续迭代过程中,动态扩展的外层字段和ProductType的固有字段完全隔离,不会出现重名冲突导致的解析异常,对公共API的长期维护非常友好。

补充说明:方案(a)仅适合以下特殊场景

如果你们对外暴露的所有涉及ProductType的接口,都会默认返回quantityAvailable、priceForDates这类字段,且这些字段已经被定义为ProductType对外公开的固有属性,没有单独返回纯ProductType结构的场景,可以选择方案(a),否则不建议公共API使用该方案。

内容的提问来源于stack exchange,提问作者Ben123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 17:36:04