我是RESTful API的新手,并且正在开发我的第一个用于移动应用程序的第一个。我有一个关于API版本以及如何管理/解决它们的问题。
此时,我的API'版本'是我的API类所在的名为v<version_name>
的目录。在该目录中,我在另一个名为include
的目录中拥有API和REST客户端所需的资源。所以结构如下:example.com/api/v0.2/method_name/
和.htaccess
,我确保API版本之后的所有内容(在.htaccess
文件中硬编码)都保存在查询字符串参数中)。
我不确定它是否是实时应用程序的正确方法,因为它也需要手动更改客户端的URL端点。所以我的问题是:
v0.3
,但安装了应用程序的客户端将访问v0.2
并获得404响应代码? 编辑:有些资源位于api
文件夹本身之外,位于根include
文件夹中。
编辑2 :我的API定位于移动应用程序使用,不可公开使用。
答案 0 :(得分:0)
虽然我认为这些问题主要是基于意见的,但我会有一个... ...
我认为这是一种有效的方法,我见过其他人使用它, 包括微软。
当需要过时API时,您可以提供404 返回并解释新API位于新地址。 但是,退出API版本通常是一个坏主意;您 至少必须给客户端开发人员足够的时间来切换 退役之前的新API,如果有的话。
更优雅的解决方案是将API保持在一个 地址,并根据需要更新,并添加到它而不是 尽可能更换。继续支持过时的功能 尽可能长时间与客户开发人员进行公开沟通 关于何时某种方法不再有效。
只是我的意见,用它做你想做的事情......