【问题标题】:Enforce Json schema validation, on rest endpoint, to verify the integrity of Json response在 rest 端点上强制执行 Json 模式验证,以验证 Json 响应的完整性
【发布时间】:2019-05-01 07:59:14
【问题描述】:

正在使用spring-boot开发rest端点,以消耗来自另一个微服务(外部)的资源,由于这两个服务都处于开发阶段,因此请求和响应经常发生很多变化。很多时候我们的微服务因为目标微服务的响应变化而失败。

为了避免这种失败,我们考虑在调用客户端中定义一个 JSON 模式来描述预期的响应。

如果存在架构不匹配,则记录错误消息,前缀为“JSON_SCHEMA_MISMATCH”。

请告知是否有任何其他更好的解决方案可以以更通用的方式处理此问题,这意味着同样可以用于其他微服务而无需更多重复代码。

【问题讨论】:

    标签: json rest spring-boot microservices jsonschema


    【解决方案1】:

    您可以使用对象直接从服务中获取值。 例如 -
    VOClass vOobject = restTemplate.getForObject(url, VOClass.class, params);

    您使用的微服务也应该返回相同的对象,或者具有相同变量名的 json。 如果您得到的响应中的变量与您的 VOClass 对象中的变量匹配,那么将设​​置这些值,而那些不匹配的将为空。 此外,如果有从微服务返回的新变量,您可以通过在您的 VOClass 中添加这些变量来使用它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-08
      • 2021-11-28
      • 2020-10-15
      • 1970-01-01
      • 1970-01-01
      • 2016-04-23
      • 1970-01-01
      • 2011-06-08
      相关资源
      最近更新 更多