有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java云网关无法通过网关访问服务,但直接访问没有问题

我正在创建一个云应用程序,并拥有云网关和客户经理服务。我还设置了发现服务。当我直接向account manager服务发送请求时,它确实返回预期结果,但当我通过网关发送请求时,它返回503禁止的错误消息。这是什么原因造成的?我在account manager服务中有以下属性和一个控制器方法“/test”,它只返回“hi”以进行测试

网关属性

server:
  port: 8081

eureka:
  client:
    service-url:
      default-zone: http://localhost:8761/eureka
    register-with-eureka: false
  instance:
    prefer-ip-address: true

spring:
  application:
    name: gateway
  cloud:
    gateway:
      routes:
        - id: account-manager-service
          uri: lb://ACCOUNT-MANAGER-SERVICE
          predicates:
            - Path=/account-manager-service/**

客户经理属性

spring:
  application:
    name: account-manager-service   
server:
  port: 8082
eureka:
  client:
    service-url:
      default-zone: http://localhost:8761/eureka
  instance:
    hostname: localhost

发现服务器属性

spring:
  application:
    name: eureka
server:
  port:
    8761
eureka:
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      default-zone: http://localhost:8761/eureka
  instance:
    hostname: localhost

在eureka仪表板中,我可以看到客户经理服务已注册。 我发送的请求失败了

http://localhost:8081/account-manager-service/test

下面的直接请求可以正常工作

http://localhost:8082/test

共 (0) 个答案