浏览器访问没问题,java请求接口一直超时?

来个大佬看一下,有没有好办法。ε=(´ο`*)))

我在IDEA里面用java请求 https://fapi.binance.com/fapi/v1/ticker/price?symbol=BTCUSDT 这个地址,无论我用httpsURLConnection,还是OkHttp,还是hutool,统统连接超时,浏览器可以访问这个地址,python也可以请求成功。就java不行。
图片
查了查有说是要加这个 -Djava.net.preferIPv4Stack=true 使用IP4,但是我加了还是不行。
图片

阅读 4.8k
6 个回答

你使用不同的工具去查询 fapi.binance.com,它绑定的域名基本上都不通,所以看运气了。你可以找工具去找个连通概率高的 Ip,手工设置 HOSTS 来试试。

检测 fapi.binance.com

image.png

新手上路,请多包涵
  1. 浏览器能访问,工具连接超时,ping不通,说明本地有网络代理。
  2. 在代码里面设置代理就行
    @Test
    void test() throws IOException {
        OkHttpClient client = new OkHttpClient().newBuilder()
                .proxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("localhost", 7890))) // 此处为浏览器代理端口
                .build();
        Request request = new Request.Builder()
                .url("https://fapi.binance.com/fapi/v1/ticker/price?symbol=BTCUSDT")
                .build();
        Response response = client.newCall(request).execute();
        System.out.println(new String(response.body().bytes(), StandardCharsets.UTF_8));
    }

会不会是你通过浏览器翻墙了。所以在浏览器里可以正常访问。

有没有可能你开了代理 java代码的话必须也要增加代理

币安的标准域名不翻墙国内本来就一直访问不了吧

需要代理,看你具体用的啥代理。。百度下Java配置Proxy,或者系统配置出口路由

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏