协议的向后兼容性

问题描述

我如何针对所有不同的消费者版本验证协议。每当我尝试测试协议时,它只会验证最新的协议。有没有办法同时验证较旧的消费者版本。

Table view

我也尝试过使用 ConsumerVersionSelector 选项。但是生产版本似乎没有经过验证

consumerVersionTags: ['master','production'],consumerVersionSelectors: [
        {tag: 'master',latest: true },{tag:'production'},]

任何帮助将不胜感激!

解决方法

我不确定您所说的“所有消费者版本”是什么意思。在显示的图像中,您是否有生产版本 1.0.02.0.0?这通常不是这种情况,但在移动设备等确实同时部署了多个版本的情况下可能很常见。

假设它就是你所需要的...

您需要设置 latest: false - 来自 docs

latest:是否只验证属于最新应用程序版本的协议。最常见的用例是将其设置为 true。当 false、null 或省略时,将验证属于所有具有指定标签的应用程序版本的协议。这是为了支持 API 具有多个生产版本以及协议(例如移动消费者)的情况。

您可能也不应该将 consumerVersionTagsconsumerVersionSelectors 结合使用,尤其是在标签重叠的情况下,因为它可能会覆盖选择器(即设置 latest: true)。