有 Java 编程相关的问题?

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

JavaUndertow:如何根据请求正文内容控制主机的选择?

我尝试实现自己的代理,如下所示:

LoadBalancingProxyClient loadBalancer = new LoadBalancingProxyClient()
        .addHost(new URI("http://localhost:8080"))
        .addHost(new URI("http://localhost:7777"))
        .setConnectionsPerThread(20);

Undertow reverseProxy = Undertow.builder()
        .addHttpListener(8081, "localhost")
        .setIoThreads(1)
        .setHandler(ProxyHandler.builder().setProxyClient(loadBalancer).setMaxRequestTime(30000).build())
        .build();
reverseProxy.start();

我想控制选择代理服务器。取决于请求主体,我想选择localhost:8080localhost:7777

在底拖代理中可能吗

另外,如果无法进行下拖,我准备切换到另一个代理


共 (1) 个答案

  1. # 1 楼答案

    我正在使用Jetty org.eclipse.jetty.proxy.ProxyServlet管理后端的动态列表

    您可以选择目标后端覆盖: org.eclipse.jetty.proxy.AbstractProxyServlet.rewriteTarget(HttpServletRequest)

    (我也只想使用底拖)