按 REST 之父 Fielding 的定义,没有 HATEOAS(超媒体驱动应用状态)就不算真正的 REST。但对大多数团队,HATEOAS 用现有工具实现起来并不轻松,而且对调用方来说反而稀释了你追求的简洁。原文一句话点透:「不采用超媒体,在很多情况下既可以是缺点,也可以是一种特性」。关键教训是——敢于如实称呼你的设计:大部分采用 REST 但不全用的,叫「务实 REST(pragmatic REST)」即可;如果它本质就是 RPC,只要名副其实、客户也认同,那就大方做成 RPC API,不必硬贴 REST 标签。