我有一个后勤问题:我正在试图找出管理与应用程序不同步的API的最佳方法.解释它的最好方法是举个例子:
假设MyApp版本1.0发布到需要first_name,last_name和email的"submit_feedbacK"API.
然后我将MyApp版本2.0提交到App Store.该版本旨在将first_name,last_name,gender和email发布到API.所有这些都是API上的必填字段.
我遇到的问题: - 如果我在新应用程序运行之前更新API,它将破坏版本1.0 - 如果我等到版本2.0处于活动状态并远程瘫痪1.0,我必须正确计时.
我猜想"正确答案"是维护两种不同的API.但如果两个API都发布到同一个实时数据库,那会让事情变得有点尴尬.
有人有关于如何建模的建议吗?
此问题可能与iOS消费API设计共享某些方面.
正确的答案肯定是提供两个API(至少在用户调整时的短时间内).您不必同时维护两个版本,因为一旦发布了较新版本,您可以维护该版本,并为旧版用户提供旧版本.您可能需要做的唯一真正的改变是安全补丁或主要问题.主要更改(例如您决定重新构建整个数据库)可能导致旧版本不再起作用,但是对新版API的更新应该设计为允许以前的版本仍然起作用.
我链接到的另一个问题是如何让您的应用程序的不同版本访问正确的API版本.
另一个注意事项是,您可能更容易(取决于您使用的框架)将API设计为引擎或子应用程序,并简单地将它们安装在不同的端点.我知道这可以通过使用Engines在Rails中轻松实现,在使用带有子应用程序的app.use()的Node中可以轻松实现.
| 归档时间: |
|
| 查看次数: |
3352 次 |
| 最近记录: |