动态添加的zuul路由只能使用/ zuul /前缀访问

时间:2018-07-09 09:07:55

标签: spring-boot netflix-zuul

我创建了一个简单的应用程序,该应用程序使用zuul proxy通过API网关访问两个服务car-servicebike-service。首先,我在Route中为car-service添加application.properties,如下所示:

zuul.routes.car.url=http://localhost:8090

之后,我运行这三个应用程序,并检查汽车服务代理是否工作正常。现在,我在网关中具有API端点,该端点可为bike-service动态添加路由,如下所示

    @GetMapping("/add")
    public String addRoute(){
        ZuulRoute route = new ZuulRoute();
        route.setId("bike");
        route.setServiceId("bike");
        route.setPath("/bike/**");
        route.setUrl("http://localhost:8091");

        discoveryClientRouteLocator.addRoute(route);

        return "Added!";

    }

现在,当我像bike-service一样呼叫http://localhost:8080/bike/list代理服务器时,它将给出404,并且我必须呼叫http://localhost:8080/zuul/bike/list才能访问bike-service,而car-service可以直接访问。我不想在我的bike-service代理服务呼叫之前添加zuul,并且不想像car-service呼叫那样访问(即不添加/zuul/)。有什么我想念的吗?谢谢

0 个答案:

没有答案