如何发布API的新版本?

How to release new versions of an API?

我开发了一个使用 HTTP 数据的应用程序。 API 是使用 Slim Framework 制作的,数据库是 MySQL 使用来自 AWS 的 RDS。

目前可以正常使用,没问题。但我需要发布新版本,这就是问题所在。我不知道该怎么办。

考虑到如果我在 API/database 中更改某些内容,将会影响尚未更新该应用程序的任何人。

我应该如何让它发挥作用?强制用户更新应用程序?

我阅读了有关版本控制 API 和使用 phinx、flyway 等的迁移方法的信息。但在这里,问题是数据库。我不知道如何使用 API 自动执行此操作,甚至不知道它是否正确。

在您的应用程序的新版本中,将 User-Agent header 添加到您的请求中。 此 header 将包含 OS (Android/iOS) 的类型和您的应用程序版本(例如 2.0)。在后端检查此 header 如果应用程序版本为 2.0 及以上,请使用 v2 版本的数据库来请求其他 1.0 版本。

我还建议添加 "You use out of date version of application. Please update" 屏幕,这样您就可以强制所有用户在一段时间后进行更新。