首页 > 解决方案 > 如何验证 Spring Cloud Gateway 中传入服务的标头?我需要调用 2 个其他 REST API 调用(GET/POST)来验证标头

问题描述

我必须验证标题。例如,对 spring 云网关的传入请求是

https://spring-test-gateway.com/cloud/gateway/test/

标头:身份验证令牌:1241241244

要求: 调用两个 REST API

a) 一种是根据 auth-token (/validate/userroles) 获取用户角色

b) 其他是从 auth-token(/validate/userid) 中获取用户 id

如果用户发送了正确的令牌,那么我们将转发到正确的微服务。

问题是如何调用上述 2 REST API。我们考虑在自定义过滤器中调用这两个微服务并尝试使用RestTemplate。我们无法实现它。

对不起。如果问题是基本的。由于Spring Cloud Gateway 中不允许使用RestTemplate 。可能是配置错误。对此问题的任何见解都可能有助于我们进一步进行。

标签: springspring-bootcloudgateway

解决方案


为此,我们必须使用自定义过滤器。在自定义过滤器中,我们可以调用上面的休息服务,这可以完成。

https://cloud.spring.io/spring-cloud-gateway/multi/multi__developer_guide.html#_writing_custom_gatewayfilter_factories


推荐阅读