避免后端更改前端破坏事物的好过程是什么?
What is a good process to avoid changes in backend breaking things in the frontend?
我们有一个项目,后端人员不断更改他们的端点,有时在前端我们有奇怪的错误,在与后端人员交谈后我们发现这是他们所做的新更改。
这个错误有时很难跟踪并且浪费时间。因为我们的代码有一天可以工作,然后当 RESTful api 在我们不知道的情况下被更改时,我们看到我们的代码不再工作。
有什么好的方法可以避免这种情况?什么是避免这种情况的好过程。你们公司是怎么做到的?
您应该有 API 版本号。新的后端功能或对后端的更改应带有新的 API 版本号;旧的 API 版本号应该总是 return 相同的结果不变。
然后如果后端发生变化,他们会通知你有一个新版本你应该使用,有一个新的 API 版本号,你可以随时切换到它。
我对客户端软件使用的另一种方法(这更重要,因为我不能强迫最终用户升级他们的软件):我检查从服务器获得的所有内容,以及所有不是'不是我期望它被登录到开发人员机器上的方式。因此,如果服务器更改了它发送给我的内容,我会很快知道(如果它影响到我们的最终用户,我们将付出沉重的代价)。
我接受@gnasher729 的回答。但是如果我们不对 REST API 进行版本化,那么我们必须采用不同的方式来处理此类问题。
我们遵循以下方法来传达 REST API 更改。希望这对其他人也有帮助。
我们在中央位置(Git/Project 中央)保留了 REST API 定义文档和 WADL,其中包含每个 Web 服务的示例请求和响应。因此,每当我们的后端团队添加任何新服务或进行任何架构更改时,他们都会经常更新此文档。因此,通过定期参考此文档,我们的前端团队可以了解 API 的最新修改。
我们有一个项目,后端人员不断更改他们的端点,有时在前端我们有奇怪的错误,在与后端人员交谈后我们发现这是他们所做的新更改。
这个错误有时很难跟踪并且浪费时间。因为我们的代码有一天可以工作,然后当 RESTful api 在我们不知道的情况下被更改时,我们看到我们的代码不再工作。
有什么好的方法可以避免这种情况?什么是避免这种情况的好过程。你们公司是怎么做到的?
您应该有 API 版本号。新的后端功能或对后端的更改应带有新的 API 版本号;旧的 API 版本号应该总是 return 相同的结果不变。
然后如果后端发生变化,他们会通知你有一个新版本你应该使用,有一个新的 API 版本号,你可以随时切换到它。
我对客户端软件使用的另一种方法(这更重要,因为我不能强迫最终用户升级他们的软件):我检查从服务器获得的所有内容,以及所有不是'不是我期望它被登录到开发人员机器上的方式。因此,如果服务器更改了它发送给我的内容,我会很快知道(如果它影响到我们的最终用户,我们将付出沉重的代价)。
我接受@gnasher729 的回答。但是如果我们不对 REST API 进行版本化,那么我们必须采用不同的方式来处理此类问题。
我们遵循以下方法来传达 REST API 更改。希望这对其他人也有帮助。
我们在中央位置(Git/Project 中央)保留了 REST API 定义文档和 WADL,其中包含每个 Web 服务的示例请求和响应。因此,每当我们的后端团队添加任何新服务或进行任何架构更改时,他们都会经常更新此文档。因此,通过定期参考此文档,我们的前端团队可以了解 API 的最新修改。