【问题标题】:Unable to tunnel through proxy. Proxy returns "HTTP/1.1 403 Forbidden无法通过代理进行隧道传输。代理返回“HTTP/1.1 403 Forbidden
【发布时间】:2021-04-22 07:22:40
【问题描述】:

您好,我正在使用HttpsURLConnection 连接外部服务,它适用于少数事务,但一段时间后它会失败并出现以下错误

Unable to tunnel through proxy. Proxy returns "HTTP/1.1 403 Forbidden

我打印connection.getErrorStream() 它给了null

请在下面找到它在 os = connection.getOutputStream(); 处失败的代码

connection = restConfiguration.getSSLConnection(url, connection);
connection.setDoOutput(true);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
connection.setRequestProperty("Accept", "application/json; charset=UTF-8");
connection.setRequestProperty("Authorization", "Bearer " + authorization);
os = connection.getOutputStream();
os.write(signOrderRequest.toJson().getBytes("UTF-8"));
os.flush();

有什么建议、想法吗?

【问题讨论】:

  • 什么是restConfiguration
  • 它是我们连接到 ssl 方法的对象

标签: java spring-mvc https http-proxy


【解决方案1】:

我们遇到了同样的问题,我们刚刚发现调用

URL.openConnection()

没有proxy 参数并不意味着不会使用代理,而是会使用系统代理。

这就是为什么它一开始看起来还可以,但过了一会儿就失败了(当系统代理由另一个用户/进程设置时)。

如果您绝对不想使用任何代理,则必须使用:

URL.openConnection(Proxy.NO_PROXY)

最大

【讨论】:

    猜你喜欢
    • 2013-02-11
    • 2013-07-01
    • 2017-08-11
    • 1970-01-01
    • 2020-04-18
    • 2018-01-14
    • 1970-01-01
    • 2017-10-02
    相关资源
    最近更新 更多