Spring Cloud Zuul 实现路由,Filter具体应用


Spring Cloud Zuul作为网关,可实现请求验证过滤,路由到具体服务的作用。

FilterChain先后顺序如下:

PreFilter验证请求信息;

RouteFilter控制路由逻辑;

PostFilter调用后台逻辑后,返回报文处理;

ErrorFilter错误处理。

举例:

比如请求订单接口,报文包括验证信息及具体请求参数。

通过配置路由到具体接口,通过参数调用接口,返回具体报文。

参数传递:

1、post请求,String类型json

2、接口获取@ResponseBody,将获取到String转json,再获取详细参数信息

3、RequestContext在过滤链中共享的,之前的参数可以获取RequestContext的HttpServletRequest,

setAttribute传递参数,之后filter通过getAttribute接受。

4、request、response在RequestContext都是以流形式存在,需InputStream转String。

5、PostFilter获取返回报文,可通过getResponseBody()获取处理。

验证:继承ZuulFilter类,重写run方法,调用具体验证服务,验证通过返回true。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM