Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 实现API版本控制系统_Php_Api - Fatal编程技术网

Php 实现API版本控制系统

Php 实现API版本控制系统,php,api,Php,Api,您好,我有以下API控制器: v3 使用以下api函数 buy list delete edit 有人可以访问上面的api函数 在调用api函数之前,我还在v3控制器中进行参数检查,以确保传入正确的参数 我正在实现向后不兼容的更改。正确实现版本控制的最佳方法是什么 我正在考虑做以下工作: 每个版本都有单独的功能,如 buy_v1 buy_v2 控制器中的每个函数返回模型函数的响应 只需创建一个名为v4的新控制器。您可以将您的方法抽象为助手类(或超类),只需为每个不同的方法保留一个版本的代码

您好,我有以下API控制器:

v3
使用以下api函数

buy
list
delete
edit
有人可以访问上面的api函数

在调用api函数之前,我还在v3控制器中进行参数检查,以确保传入正确的参数

我正在实现向后不兼容的更改。正确实现版本控制的最佳方法是什么

我正在考虑做以下工作: 每个版本都有单独的功能,如

buy_v1
buy_v2

控制器中的每个函数返回模型函数的响应

只需创建一个名为v4的新控制器。您可以将您的方法抽象为助手类(或超类),只需为每个不同的方法保留一个版本的代码。为您提供可靠的代码重用。

不过可能有很多版本。比如20个新版本。如果你正在实现新的向后不兼容的函数,你应该只需要添加一个新的控制器,即使这样,你也只需要重写以前的类。如果新版本的方法被设计成像重载函数一样工作,那么我会将所有不同的可能性映射到同一个端点,然后检查正确的值集