Eclipse中Java代码的连接超时,但浏览器中的超时

时间:2019-03-01 04:55:40

标签: java rest networking

我已经编写了访问Google API的代码。当从浏览器中命中时,URL会立即做出响应,但是当使用OkHttpClient从Eclipse中命中相同的URl时,则会导致连接超时。尝试过使用各种方法每次仍击中URL仍然是连接超时。我什至尝试使用HTTP代替HTTPS,但还是没有运气。我对网络的了解不多,但是问题似乎出在办公室网络上,因为代码可以在我的家庭网络中正常工作。我也尝试设置更高的超时值,但它永远不会连接。因此,请让我知道可能的原因是什么,如何克服Office Proxy或造成此问题的原因。下面是我当前正在使用的代码

public static String getAPIData(String finalURL) throws Exception {
    // TODO Auto-generated method stub

    OkHttpClient client = new OkHttpClient();
    Request request = new Request.Builder().url(finalURL).build();

    Response response = client.newCall(request).execute();
    return response.body().string();

}

1 个答案:

答案 0 :(得分:1)

我以前也遇到过同样的问题,我通过设置Java VM参数解决了它。我的网络中有一些代理设置,所以我在Java VM参数中设置了相同的代理。

单击运行-> 运行配置->单击右侧的 Arguments 标签->在 VM参数上写入 >:
-Dhttp.proxyHost = [您的代理服务器] -Dhttp.proxyPort = [您的代理端口]

例如,如果您的PC代理服务器是exmaple.proxy.com,端口是8080,则在VM参数中输入以下内容:
-Dhttp.proxyHost = exmaple.proxy.com -Dhttp.proxyPort = 8080