解决Spring Cloud Gateway获取body内容,不影响GET请求的操作
在对接终端接口的时候要做验签,就涉及到在网关做拦截器,然后取出BODY里面的数据。网上找了几个方法,有的拿不到数据,有的拿到数据之后不支持GET请求了。没有一个合理的解决办法,最后想到在动态路由构建的时候可以指定METHOD,于是有了如下解决办法。分别指定了不同请求METHOD对应的路由策略在POST请求中需要缓存BODY信息,在Filter中便可以获取到GET请求因为没有BODY,所以如果不指定GET的路由便会报错可能会有更通用的方法,但是目前只想到这么多,以后有好的解决办法会继续更新因为http请求中的body,读取过一次后就无法重新再读,但是我们希望网关项目中可以在所有filter中共享body中的内容。