我正在用Laravel框架构建一项服务。我将生成一个API,供Android和iOS应用程序使用。同时,我将进行内部API调用来更新我的HTML/Blade视图(或者在将来某个时候更新我的SPA前端)。所有三个客户端(web,Android,iOS)都将由我们的团队开发,因此交流将非常容易!

我搜索了很多,当涉及到API版本控制(Best practices for API versioning?或https://apisyouwonthate.com/blog/api-versioning-has-no-right-way)时,似乎有不同的方法。区别于其他问题的是如何以及由谁访问该API。我的API将被我们自己的应用程序(无论是web还是移动)简单地使用。对API的调用将由我们自己的应用程序生成。任何第三方应用程序都不会访问此API.。
我对此有几个问题:
在这种情况下,
)
- **Resource Versioning (MIME Based)**
- Accept: application/vnd.example.v1+json
提前谢谢你!
发布于 2020-07-06 10:28:07
之所以需要Url版本,是因为google play不允许强制更新,因此会有不同版本的android客户端在同一时间工作。我创建了一个简单的包来帮助URL版本控制和回退。https://github.com/mbpcoder/laravel-api-versioning
对于资源版本控制,Laravel有一个资源对象来生成响应--为每个API版本创建一个文件夹是很好的。
如果对API的更改更深--例如,您需要对数据库结构进行更改--那么我通常会使用旧API更新它们的控制器、模型.以适应新的结构。
https://stackoverflow.com/questions/59321156
复制相似问题