我正在学习REST架构风格,在为客户开发后端API时,我不了解一些事情。
我已经阅读了关于版本化http api的各种方法,这些方法都有意义,但是如何向客户表明,当他使用过时版本的api时,他需要更新他的版本?有没有办法在没有与客户联系并告诉他需要更新他的版本的情况下这样做?
我在想,可能有某种方法要求客户指出他当前的版本,如果它已经过时就给出适当的消息。这是标准还是可行?
答案 0 :(得分:1)
通常,客户端会根据以下两种情况之一进行更新。他们要么想要在更新版本中可用的功能,要么就是放弃对先前版本的支持。
如果您计划放弃对API版本的支持,您肯定应该通知您可以主动找到的任何客户。如果他们依赖于您的API版本,并且在没有任何警告的情况下消失,那么他们将成为以前的客户。
在绝大多数情况下,您的API的客户端不会扫描网络流量,以查找API正在更改的标头或其他指示符。要求他们这样做是非标准的,几乎肯定不可行。
此外,放弃对API版本的支持是一个重大转变。它会导致所有客户出现剧变,迫使他们在您选择的日期之前对其应用程序进行代码更改。这不是轻易做到的事情。