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