如何正确路由以下网址?
我创建了一个 Vertx 反向代理,用于验证很久以前设置的遗留 Web 应用程序。
Web 应用程序位于端口 8200 上并运行。我已在 8201 上创建了反向代理。我已在 Azure Active Directory 中注册了该应用程序并设置了回调路由,但我认为我可能配置了错误的路由。
我想保护通过 OAuth2 代理对后端服务器的所有调用。
v = Vertx.vertx();
HttpClient proxyClient = v.createHttpClient();
HttpProxy httpProxy = HttpProxy.reverseProxy(proxyClient);
Router proxyRouter = Router.router(v);
HttpServer proxyServer = v.createHttpServer();
OAuth2Auth authProvider = AzureADAuth.create(v, "CLIENT_ID", "CLIENT_SECRET", "TENANT_ID");
OAuth2AuthHandler oauth2 = OAuth2AuthHandler.create(v, authProvider, "http://localhost:8201/callback");
oauth2.setupCallback(proxyRouter.route("/callback"));
proxyRouter.route("/*").handler(oauth2);
proxyRouter.route(HttpMethod.GET, "/*").handler(ProxyHandler.create(httpProxy, 8200, "localhost"));
proxyServer.requestHandler(proxyRouter).listen(8201);
页面身份验证正常,但在重定向到回调时失败。我认为代理的路由器最终陷入了循环。
这个工作有可能实现吗?
这可能是代理本身的错误。
我已提交https://github.com/eclipse-vertx/vertx-http-proxy/issues/101