如何解决Spring Cloud Gateway过滤器中的各种HTTP调用
在(我猜)复杂的设置中,我有一个小问题。我使用Spring Cloud Gateway将请求路由到各种目标系统。在进行路由之前,必须检查一些请求。以下方案必须实现为GatewayFilter:
- 从交易所获取主体信息(exchange.getPrincipal()。map(...))
- 检查被叫路径;如果命中了特定的URL,请执行以下步骤
- 阅读请求正文,并检查某些行是否需要进一步检查
- 对于需要检查的每一行;调用外部系统(WebClient.get())
- 汇总所有检查结果(如果检查失败,则不会进行任何路由)
- 路由到目标系统
我尝试了许多不同的方法来实现该方法;但没有成功:-(
一些错误结果是:
- 请求未路由;客户端收到HTTP 202
- 请求已路由并返回给客户端;执行检查;但未考虑在内-因此返回了响应,而忽略了检查结果(响应返回给客户端;但是检查仍在后台执行)
- 请求已路由并返回给客户端;检查未执行
- ...
是否有解决该问题的提示?
例如,我使用以下页面来实现过滤器:https://www.baeldung.com/spring-cloud-custom-gateway-filters因此,挑战似乎在于根据请求正文内容链接各种请求。
欢迎任何提示。
谢谢 卡斯滕
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。