当前位置: 首页 > 知识库问答 >
问题:

对“url”的POST请求出现I/O错误:连接被拒绝

萧和同
2023-03-14

我正在使用rest模板调用外部系统,它在本地运行正常,没有任何超时设置,但在我的测试服务器上,它给了我以下错误:

“的POST请求时出现I/O错误”https://externalsystem/url“:连接被拒绝:连接;嵌套的异常是java。网ConnectException:连接被拒绝:连接

RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>();
HttpEntity<MultiValueMap<String, String>> request = new 
HttpEntity<MultiValueMap<String, String>>(map, headers);
map.add("key", value);      
restTemplate.postForEntity(url, request, String.class);

共有2个答案

胡景澄
2023-03-14

我在JRE1上收到了这个问题。7,但与JDK 8配合良好。解决此问题的步骤

>

包括jar文件httpclient-4.5。2.jar和httpcore-4.4。4.jar

使用下面的代码来getRestTemboard:

public static RestTemplate getRestTemplate()
        throws KeyStoreException, NoSuchAlgorithmException, KeyManagementException {
    //TrustStrategy acceptingTrustStrategy = (X509Certificate[] chain, String authType) -> true;

    TrustStrategy acceptingTrustStrategy = new TrustStrategy() {

        public boolean isTrusted(
                final X509Certificate[] chain, String authType) throws CertificateException {
            // Oh, I am easy...
            return true;
        }

    };

    SSLContext sslContext = org.apache.http.ssl.SSLContexts.custom().loadTrustMaterial(null, acceptingTrustStrategy)
            .build();

    //SSLConnectionSocketFactory csf = new SSLConnectionSocketFactory(sslContext);

    SSLConnectionSocketFactory csf = new SSLConnectionSocketFactory(
            sslContext,new String[]{"TLSv1.2"},
            null,
            new NoopHostnameVerifier());

    CloseableHttpClient httpClient = HttpClients.custom().setSSLSocketFactory(csf).build();

    HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
    /*HttpComponentsClientHttpRequestFactory requestFactory 
    = new HttpComponentsClientHttpRequestFactory(
        HttpClientBuilder.create()
                .setProxy(new HttpHost("proxycacheST.hewitt.com", 3228, "http"))
                .build());*/

    requestFactory.setHttpClient(httpClient);
    RestTemplate restTemplate = new RestTemplate(requestFactory);
    return restTemplate;
}

步骤4:调用restTemplate.exchange(resturl, Httpmethod.POST,null,String.class);

希望它会得到正确的结果

戴化
2023-03-14

这当然是一个防火墙问题尝试设置主机代理及其端口,如下所示:

System.setProperty("proxyHost", "yourproxy.server");
System.setProperty("proxyPort", "portValue");
 类似资料:
  • 我已经用谷歌搜索了它。但是这些都不能解决我的问题。我在调用rest控件时,代码中的SSL证书出现了问题。 我的控制方法是: 错误为:-I/O错误在“https://myurl.com”的POST请求上:sun.security.validator.validatoreXception:PKIX路径构建失败:sun.security.provider.certpath.suncertPathBuil

  • 线程“main”org.springframework.web.client.resourceAccessException中的异常:“http://localhost:8081/footballershirt/footballershirts”的GET请求上的I/O错误:拒绝连接:连接;嵌套的异常是java.net.connectException:Connection:Connection a

  • 我试图通过一个用Flask制作的API从我的react应用程序中添加用户。但是post请求出现了以下错误。 'http://localhost:5000/api/v1.0/add'from origin'http://localhost:3000'已被CORS策略阻止:在飞行前响应中,access-control-allog-headers不允许请求头字段access-control-allog-

  • 当我调用restendpoint(rest模板http客户端)“myservice..com/rest/api/”时,有时会出现以下错误。此错误的原因是什么?这是客户端还是服务器错误?

  • 尝试将数据发布到api时出错。下面是代码片段。期待早日得到帮助!谢谢 7组织。springframework。网状物客户ResourceAccessException:“jirasdtest.myoutotec.com/rest/api/2/issue/SD-1043/comment”的POST请求出现I/O错误:连接超时;嵌套异常为java。网SocketTimeoutException:连接在

  • 问题内容: 我在端口5000的node.js服务器上设置了CORS,如下所示: 我现在正尝试像这样在从硬盘打开的静态网页中使用JQuery发送AJAX POST请求: 该函数从不调用,并且我得到的唯一警报是来自XHR 处理程序的警报,其中包含以下错误: 我认为CORS配置合理, 我缺少什么? 编辑 :对于我而言,我能找到的最佳解决方案是从服务器发送页面: 问题答案: 这是我正在使用的代码。它位于我