gpt4 book ai didi

java - 在代理后面运行顶点

转载 作者:搜寻专家 更新时间:2023-11-01 03:56:44 26 4
gpt4 key购买 nike

有没有人有幸尝试在公司代理后使用 vertx?我已经尝试了所有可能的方法来向 vertx 提供代理信息。到目前为止没有任何效果。

设置环境变量http_proxy= http://mycorporate.proxy.com:8080 - 运气不好

设置环境变量 VERTX_OPTS='-Dhttp.proxyHost=mycorporate.proxy.com -Dhttp.proxyPort=8080' - 运气不好

设置环境变量http.proxyHost=mycorporate.proxy.comhttp.proxyPort=8080没有运气

在 vertx 命令中注入(inject)额外的 echo 我可以看到与代理相关的参数被正确地传递给了 JVM,但是仍然无法下载所需的模块(“vertx run hello.js”只是卡住了,显然是在尝试下载 io.vertx~lang -rhino~2.0.0-final)

Proxy 本身没问题——我使用它对 maven、sbt 和其他需要代理的不同东西没有问题在家里使用的同一台笔记本电脑可以通过下载 io.vertx~lang-rhino~2.0.0-final 成功运行“vertx run hello.js”(第一次运行)

我刚刚开始根据公司需求评估 vertx,这是我的第一个瓶颈,阻碍了我进一步尝试做出决定。到目前为止,我必须按照后续步骤作为解决方法: 1 从家里运行并在 sys-mods 中获取任何所需的模块。 2 回到办公室后,手动将模块上传到测试服务器上的 sys-mods。显然,这不是运行任何东西的正常方式。

最佳答案

我遇到了类似的问题。我发现 HttpClient 表单不从 JVM_OPTS 读取设置。所以解决方案如下:

编辑你的 vertx.bat(sh)

set JVM_OPTS=-Dhttp.proxyHost=xxxx -Dhttp.proxyPort=xxxx

然后在与 httpClient 相关的代码中尝试这样的操作

   HttpClient client = vertx.createHttpClient();
String proxyHost = System.getProperty("http.proxyHost", "none");
Integer proxyPort = Integer.valueOf(System.getProperty("http.proxyPort", "80"));

if(!"none".equalsIgnoreCase(proxyHost)){

client.setHost(proxyHost);
client.setPort(proxyPort);
}

后来在代码中涉及到 HTTP 请求

   MultiMap map = new CaseInsensitiveMultiMap();
map.add("Host", domainName); //get domain of REQUESTED_URL
client.getNow(REQUESTED_URL, map, new new Handler<HttpClientResponse>(){...});

关于java - 在代理后面运行顶点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21416114/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com