请教:关于移动app后端接口多版本的策略
程序员文章站
2022-05-19 22:45:05
...
因为项目中需要控制多个版本的接口同时提供给多个版本客户端的情况,所以一直对接口版本的策略心存疑问。请教一下大家如何实现的呢?
后端语言:php
目前我能想到的实现方式:
1,单一目录,接口内部判断 (很恶心,很容易造成混乱)
2,每版本就拖出一个版本目录,可以随心所欲的修改某个版本的接口,但是如果有一个接口逻辑要修改的话,可能涉及全部版本里的文件,比如1.0,2.0,3.0,4.0.。。。很变态的方式
3,建立一个基础版本,利用autoload的规则,如果版本目录下有,则用版本目录里的类,没有的话去用基础版本里的类。好处是各个版本目录里,只存在变动了的文件。但是在开发中,依旧感觉拖沓。
4,利用继承,版本里的类重写基础版本里的类方法,好处是只需要重写一个方法,但是坏处是考虑到私有方法的问题。
后端语言:php
目前我能想到的实现方式:
1,单一目录,接口内部判断 (很恶心,很容易造成混乱)
2,每版本就拖出一个版本目录,可以随心所欲的修改某个版本的接口,但是如果有一个接口逻辑要修改的话,可能涉及全部版本里的文件,比如1.0,2.0,3.0,4.0.。。。很变态的方式
3,建立一个基础版本,利用autoload的规则,如果版本目录下有,则用版本目录里的类,没有的话去用基础版本里的类。好处是各个版本目录里,只存在变动了的文件。但是在开发中,依旧感觉拖沓。
4,利用继承,版本里的类重写基础版本里的类方法,好处是只需要重写一个方法,但是坏处是考虑到私有方法的问题。
希望有其他的方法可以更好的管理多个版本的问题。
多谢
回复内容:
因为项目中需要控制多个版本的接口同时提供给多个版本客户端的情况,所以一直对接口版本的策略心存疑问。请教一下大家如何实现的呢?
后端语言:php
目前我能想到的实现方式:
1,单一目录,接口内部判断 (很恶心,很容易造成混乱)
2,每版本就拖出一个版本目录,可以随心所欲的修改某个版本的接口,但是如果有一个接口逻辑要修改的话,可能涉及全部版本里的文件,比如1.0,2.0,3.0,4.0.。。。很变态的方式
3,建立一个基础版本,利用autoload的规则,如果版本目录下有,则用版本目录里的类,没有的话去用基础版本里的类。好处是各个版本目录里,只存在变动了的文件。但是在开发中,依旧感觉拖沓。
4,利用继承,版本里的类重写基础版本里的类方法,好处是只需要重写一个方法,但是坏处是考虑到私有方法的问题。
希望有其他的方法可以更好的管理多个版本的问题。
多谢
http://ningandjiao.iteye.com/blog/1990004
来个老师帮解答一下吧