微服务的疑惑?微服务内部调用接口和微服务对外接口感觉是重复方法,只是返回的一个是json,一个是对象,如何优化代码呢?

来源:12-7 构建api-gateway

Dty_祥子

2018-06-06

廖师兄,请教一件事儿

微服务内部调用接口和微服务对外接口感觉是重复方法,只是返回对象不同,一个是实体对象,一个是json对象,如何优化代码呢?减少冗余代码?

写回答

1回答

wirechen

2018-06-06

其实“返回的对象不同”这理解是不对的,因为SpringCloud微服务之间的通信是http协议(请求和返回都是http对象)①服务调用服务得到的结果你感觉是“实体对象”那是因为服务调用过程中使用Ribbon,而Ribbon你可以理解成Http的一个Java客户端,你看到调用返回的“实体对象”实质上那是这个Http客户端对返回的Response进行了封装。②而外部调用网关服务提供的接口返回你认为的“json对象”是因为这个时候Http客户端是浏览器,二者返回的都是HttpResponse,只要记住服务于服务之间通信是http就行,希望你能理解,望采纳。

0
1
Dty_祥子
非常感谢!
2018-06-07
共1条回复

SpringCloud Finchley(M2+RELEASE+SR2)微服务实战

SpringCloud组件实现微服务,【已升级Finchley.Release】

5673 学习 · 2489 问题

查看课程