记录一次API报文替换点滴

1. 需求

各位盆友在日常开发中,有没有遇到上游接口突然不合作了,临时需要切换其他接口的情况?这不巧了,博主团队近期遇到了,又尴尬又忐忑。

尴尬的是临时通知不合作了,事前没有任何提醒;

忐忑的是新的备选接口,还需一定时间配合。并且在紧张且有限的时间内,如何成功实现更换,需要一定的储备和技巧。

2. 解决过程

幸亏博主早年应对过此类"突发"情况,有一定的"应急预案"

解决的思路大致分为几步:

  1. 获取成功和失败的请求和返回报文,存在一个文件中;
  2. 区分相同的部分和差异部分,包括接口响应码,接口的字段层级、所在位置等;
  3. 评估替换方案,比如相同字段直接替换,差异字段置空或者寻找其他替代;
  4. 定义新老字段的映射mapping,开发联调;

当然这里最关键的问题是如何解决缺失字段(原来存在,而新接口不提供的情形),通常又有几种方式:

  1. 提需求,要求上游接口改造
  2. 自己加工
3. 总结经验

微服务的时代,厂商接口突然停用,已经司空见惯,当然原因千差万别。需要我们能够学到做到胸有成竹,沉着应对的办法,切忌急躁,容易乱上加乱~

相关推荐
大腕先生1 小时前
微服务环境搭建&架构介绍(附超清图解&源代码)
微服务·云原生·架构
WeiLai11128 小时前
面试基础--微服务架构:如何拆分微服务、数据一致性、服务调用
java·分布式·后端·微服务·中间件·面试·架构
Swift社区10 小时前
【微服务优化】ELK日志聚合与查询性能提升实战指南
spring·elk·微服务·云原生·架构
陌殇殇14 小时前
002 SpringCloudAlibaba整合 - Feign远程调用、Loadbalancer负载均衡
java·spring cloud·微服务
落落落sss1 天前
MongoDB
数据库·windows·redis·mongodb·微服务·wpf
黄名富1 天前
Spring Cloud — 深入了解Eureka、Ribbon及Feign
分布式·spring·spring cloud·微服务·eureka·ribbon
LUCIAZZZ1 天前
SkyWalking快速入门
java·后端·spring·spring cloud·微服务·springboot·skywalking
黄名富1 天前
Spring Cloud — Hystrix 服务隔离、请求缓存及合并
java·分布式·spring·spring cloud·hystrix·微服务
yinbp1 天前
bboss v7.3.5来袭!新增异地灾备机制和Kerberos认证机制,助力企业数据安全
大数据·elasticsearch·微服务·etl·restclient·bboss
一位卑微的码农2 天前
深入解析Spring Cloud Config:构建高可用分布式配置中心
分布式·spring cloud·微服务·架构