我正在创建一个Restful API,并且我在Nodejs中使用Restify具有以下文件夹结构:
- controllers
-- example.js
- models
- routes
-- example.js
- server.js
处理不同版本的最佳解决方案是什么,我在想两个:
1)以文件夹结构为基础
- controllers
-- v1.0
--- example.js
-- v2.0
--- example.js
- models
- routes
-- v1.0
--- example.js
-- v2.0
--- example.js
- server.js
但是,使用此解决方案,我必须重复所有控制器和路由,如果控制器没有更改,我必须在正确的版本文件夹中有一个副本
2)在控制器代码中输入每个函数的不同版本并发送req版本以获得正确的函数。
我希望你能理解。
答案 0 :(得分:3)
我建议解决方案2.它还建议here [Restify Documentation]。版本化路由的目标之一是避免以这种方式组织代码。
这样,只要有可能,就更容易重用一些代码。